| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Общие вопросы > Строки символов |
| Автор: S.A.G. 14.1.2008, 13:22 | ||
| Просветите для меня, плиз, следующий момент. Вот этот код в VC 8 в консольном проекте вызывает вполне нормальную реакцию - заполнение char-массива строкой "Hello, World!" с завершающим нулем:
Почему то же самое не работает в Win32 проекте? - В ходе выполнения значение либо нельзя определить, либо записывается непонятно что. |
| Автор: S.A.G. 14.1.2008, 13:43 | ||
| Вот и мне, аналогично, ничего не понятно. Добавлено @ 13:57 Есть функция,
в ней на строке "*(WORD *)szBuf = sizeof(szBuf);" ставлю брейкпойнт, запускаю. Сразу после запуска видно как он перемещается на 2 строчки вниз и, естественно, функция стопорится уже после присваивания *(WORD *)szBuf = sizeof(szBuf);. Почему перескакивает брейкпойнт? Как просмотреть содержимое массива во время выполнения ДО этого действия? Почему присваивание первому слову массива szBuf не затирает первые 4 буквы ("Hell"), а сдвигает их? |
| Автор: JackYF 14.1.2008, 14:13 | ||
Ну это вопрос к вижуаловскому отладчику.
Давай подробнее, с отладочным выводом. |
| Автор: S.A.G. 14.1.2008, 14:39 |
| Ну что там еще подробнее. До присваивания хелло ворлд стоит начиная с 0, а после - начиная с 4. |
| Автор: bsa 14.1.2008, 14:49 |
| S.A.G., отключи оптимизацию |
| Автор: S.A.G. 14.1.2008, 14:58 |
| Отключил, изменения на лицо. А что - если оптимизация, то она обязательно кривая? Может быть с оптимизацией нет смысла пользоваться дебагером - он будет выдавать всякую чушь? |
| Автор: bsa 14.1.2008, 15:00 | ||
именно. |
| Автор: Rickert 15.1.2008, 04:33 |
| Интересно, никогда такого не встречал. |
| Автор: bsa 15.1.2008, 13:01 | ||
Включи оптимизацию и встретишь. |
| Автор: Lazin 15.1.2008, 13:11 |
при оптимизации, теряется связь между значениями регистра IP и номерами строк, которая определена в pdb-шнике, из за того что компилятор может что-то выкинуть, где-то изменить алгоритм, развернуть цикл... |
| Автор: archimed7592 15.1.2008, 18:03 | ||
Да лан, серьёзно что ль? Мне казалось, что отладочная информация добавляется по немного иному алгоритму |