-
- Видимо у меня действительно происходило переполнение стека FDA(445 знак., 10.03.2006 10:04, )
- точно:) psL(410 знак., 10.03.2006 10:13, )
- Это я всё понимаю. Просто не ясно - почему компилятор никаких варнингов не выдаёт при явной возможности переполнения стека? - FDA(10.03.2006 12:01, )
- Потому, что компилятор об этом ничего "не знает". Сообщение может выдать линкер, и то Bill(1115 знак., 10.03.2006 15:53, )
- Но вот у меня, например, сначала стек имел размер 64 байта, а втеле программы был объявлен массив в 101 байт. Так почему же не было ни одного варнинга? Ведь тут, как ни крути, он в стек не влезет! - FDA(10.03.2006 16:36, )
- А Вы посмотрите файл скрипта для линкера. Там указан максимальный адрес Bill(251 знак., 10.03.2006 16:49, )
- Но вот у меня, например, сначала стек имел размер 64 байта, а втеле программы был объявлен массив в 101 байт. Так почему же не было ни одного варнинга? Ведь тут, как ни крути, он в стек не влезет! - FDA(10.03.2006 16:36, )
- Потому, что компилятор об этом ничего "не знает". Сообщение может выдать линкер, и то Bill(1115 знак., 10.03.2006 15:53, )
- Это я всё понимаю. Просто не ясно - почему компилятор никаких варнингов не выдаёт при явной возможности переполнения стека? - FDA(10.03.2006 12:01, )
- точно:) psL(410 знак., 10.03.2006 10:13, )
- Плюс к этому, если используются sprintf/sscanf, то к размеру си-стека прибавить 0x100. Грабли в стеке на 100%. - GxOST(10.03.2006 05:08, )
- Видимо у меня действительно происходило переполнение стека FDA(445 знак., 10.03.2006 10:04, )