Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Добрый день, коллеги! Решал я тут недавно тестовое задаение в заморскую компанию и они мне сказали, что я не прошёл его. Комментариев от них, что именно я сделал не так я не получил. Возможно, общими усилиями, мы сможем найти ошибки?! Всё, что мы видим - это лишь иллюзия ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2014, 10:18 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Аттачмент трудно квотировать. Не поленись отформатировать и опубликовать в удобном для форумчан виде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2014, 11:40 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Я бы не хотел код и вопросы выкладывать в открытом виде, так как SQL.RU очень хорошо индексируется. Хотя свой код, можно. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.04.2014, 11:56 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Возможно, общими усилиями, мы сможем найти ошибки?! Главная ошибка, в общем, она и единственная: ты не врубаешся. В язык С++. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.05.2014, 00:59 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Маслов Андрей Код: plaintext 1. и с английским плохо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.05.2014, 10:40 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Маслов Андрей Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Задания не читал. Глянул код по диагонали, не вдаваясь в подробности что он делает. За new[] надо бить тапками по рукам. В с++ есть чудо контейнеры с божественным raii. Тоже самое про магическое число 8. За malloc в си++ можно и канделябрам по голове получить. printf'у не хватает \n в конце, что важно так как некоторые реализации пока не дождутся \n, ничего не выведут на экран(буферизация). void main() это не стандарт ни разу. нафига в free( (aliasID *) paliasID ); делать приведение типа paliasID к самому себе же? в последнем примере (sprintf) a) возможен выход за пределы буфера в 10 символов (например, для i = 10 000 000 - 8 символов + 3 символа val + 1 завершающий ноль ) и зачем \0 ты добавил неясно. \0 в стринговых литералах по умолчанию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 09:46 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Strangecat, Зря не читали задание. Там в самом начале такой толстый намек на то, что код-то надо переписывать чуть более чем полностью. ТС этого так и не понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 09:51 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
StrangecatЗа new[] надо бить тапками по рукам. В с++ есть чудо контейнеры с божественным raii. Тоже самое про магическое число 8. За malloc в си++ можно и канделябрам по голове получить. Можно спросить у мастера в этом отдельно взятом государстве, а заглядывал ли он в исходники реализаций всемогущих и распрекрасных С++ контейнеров, с божественным RAII? Или, о великий, думает что там нет new[], malloc, и не знает как там реализована эта RAII, и что это нельзя повторить самому, буквально одним своим конструктором своего объекта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 12:12 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
StrangecatМаслов Андрей Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Задания не читал. Глянул код по диагонали, не вдаваясь в подробности что он делает. За new[] надо бить тапками по рукам. В с++ есть чудо контейнеры с божественным raii. Тоже самое про магическое число 8. За malloc в си++ можно и канделябрам по голове получить. printf'у не хватает \n в конце, что важно так как некоторые реализации пока не дождутся \n, ничего не выведут на экран(буферизация). void main() это не стандарт ни разу. нафига в free( (aliasID *) paliasID ); делать приведение типа paliasID к самому себе же? в последнем примере (sprintf) a) возможен выход за пределы буфера в 10 символов (например, для i = 10 000 000 - 8 символов + 3 символа val + 1 завершающий ноль ) и зачем \0 ты добавил неясно. \0 в стринговых литералах по умолчанию. Вы задание читали? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 12:44 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
MasterZivStrangecat, Зря не читали задание. Там в самом начале такой толстый намек на то, что код-то надо переписывать чуть более чем полностью. ТС этого так и не понял. Спасибо за комментарий, но я бы хотел получить более подробный ответ. "Обосрать" решение не сложно, а вот предложить свое?! Кстати, для всех остальных, С++ это хорошо, но если внимательно почитать задание, то Вы увидите, что реализация необходима на чистом С! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 12:51 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
StrangecatМаслов Андрей Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Задания не читал. Глянул код по диагонали, не вдаваясь в подробности что он делает. За new[] надо бить тапками по рукам. В с++ есть чудо контейнеры с божественным raii. Тоже самое про магическое число 8. За malloc в си++ можно и канделябрам по голове получить. printf'у не хватает \n в конце, что важно так как некоторые реализации пока не дождутся \n, ничего не выведут на экран(буферизация). void main() это не стандарт ни разу. нафига в free( (aliasID *) paliasID ); делать приведение типа paliasID к самому себе же? в последнем примере (sprintf) a) возможен выход за пределы буфера в 10 символов (например, для i = 10 000 000 - 8 символов + 3 символа val + 1 завершающий ноль ) и зачем \0 ты добавил неясно. \0 в стринговых литералах по умолчанию. "void main() это не стандарт ни разу" Рас кройте более подробно эту строку, что вы тут имели ввиду?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 13:06 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
MasterZivВозможно, общими усилиями, мы сможем найти ошибки?! Главная ошибка, в общем, она и единственная: ты не врубаешся. В язык С++. А должен, если просят использовать "Plain C"?! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 13:10 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
И коллеги,без обид, давайте комментировать четко с учетом задания! Я ни сколько не сомневаюсь в вашем опыте и профессионализме, по этой причине и выложил задание на этот форум. Так что давайте не будем меряться "писька...", а просто вместе решим задание и найдем ошибки с учетом нашего опыта и знаний!!! Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 13:13 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Маслов АндрейА должен, если просят использовать "Plain C"?! Должен, поскольку твой код это сосем не "plain C", в котором нет ни оператора new, ни параметров-ссылок. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 13:15 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovМаслов АндрейА должен, если просят использовать "Plain C"?! Должен, поскольку твой код это сосем не "plain C", в котором нет ни оператора new, ни параметров-ссылок. Спасибо, с new понятно, собственно в других заданиях было четко указано про использование plain c, кроме этого. Но как в таком случае вы бы решили втрое задание? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 13:18 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Маслов Андрей"void main() это не стандарт ни разу" Рас кройте более подробно эту строку, что вы тут имели ввиду?! По стандарту int main() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 13:27 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
smaldМаслов Андрей"void main() это не стандарт ни разу" Рас кройте более подробно эту строку, что вы тут имели ввиду?! По стандарту int main() Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 13:34 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
И ещё не проверяются результаты запросов памяти, в случае использования new, возможные исклуючения должны перехватываться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 13:34 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
smaldИ ещё не проверяются результаты запросов памяти, в случае использования new, возможные исклуючения должны перехватываться. Вот вить какая штука. А я их не перехватывал. Чё теперь делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 14:07 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
maytonsmaldИ ещё не проверяются результаты запросов памяти, в случае использования new, возможные исклуючения должны перехватываться. Вот вить какая штука. А я их не перехватывал. Чё теперь делать? Разрешаю не перехватывать. И так как тс хотел подробностей: Во-первых, на линуксе выделение памяти врёт, и память успешно вернется даже если её нет, а потом будет романтическое свидание с out of memory killer. Во-вторых, задолго до окончания памяти, система будет так своппится, что прогу убьют/комп заребутят (у меня как-то память кончалась, комп тормозил так что между нажатием клавиши и реакцией на экране проходило 5 секунд, я не выдержал - ресетнул нафиг). В-третьих, если нет памяти на 10 интов, то усё пропало в любом случае и ничего нельзя сделать, кроме как дать деструкторам очистить что те успеют. Сейчас не 1990-ые года, памяти много больше чем 640 кб. Короче, если не аллокается несколько гигов или не на ембеде, то проверять не надо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 14:36 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
[quot Strangecat] Хвалю. Но без if(!*alloc(...)){} и try{ new... }catch(){} быдлокод детектед. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 15:26 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
luislom, что у тебя будет в catch? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 15:46 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
maytonluislom, что у тебя будет в catch? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Если такое не отхерачишь Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 16:12 |
|
||
|
Просто хочется понять в чём я ошибся...
|
|||
|---|---|---|---|
|
#18+
Я не видел про С. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.05.2014, 22:13 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=38631345&tid=2019495]: |
0ms |
get settings: |
12ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
75ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
50ms |
get tp. blocked users: |
1ms |
| others: | 305ms |
| total: | 478ms |

| 0 / 0 |
