Форум программистов, компьютерный форум CyberForum.ru

Run-Time Check Failure #2 - Stack around the variable 'hexStr' was corrupted - C++

Восстановить пароль Регистрация
 
tytus
0 / 0 / 0
Регистрация: 29.04.2012
Сообщений: 15
30.05.2012, 12:56     Run-Time Check Failure #2 - Stack around the variable 'hexStr' was corrupted #1
вот код:
C++
1
2
3
4
5
6
7
char baseStr[] = "some number";
char hexStr[] = "0x\0";
    
cout << strcat(hexStr, baseStr) << "\n";
 
cin.get();
return 0;
Почему стек разрушается?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Subrealist
149 / 46 / 3
Регистрация: 28.05.2012
Сообщений: 115
30.05.2012, 13:08     Run-Time Check Failure #2 - Stack around the variable 'hexStr' was corrupted #2
Цитата Сообщение от tytus Посмотреть сообщение
strcat(hexStr, baseStr)
http://www.cplusplus.com/reference/c...string/strcat/
char * strcat ( char * destination, const char * source );
destination
Pointer to the destination array, which should contain a C string, and be large enough to contain the concatenated resulting string.
"destination
Указатель на массив назначения, который должен содержать Си строку, и размер которого должен быть достаточен для содержания результирующей объединённой строки"
Цитата Сообщение от tytus Посмотреть сообщение
char hexStr[] = "0x\0";
Для чего такое определение дано?
tytus
0 / 0 / 0
Регистрация: 29.04.2012
Сообщений: 15
30.05.2012, 15:10  [ТС]     Run-Time Check Failure #2 - Stack around the variable 'hexStr' was corrupted #3
... перепутал, я же к hexStr прибавляю baseStr...
Тогда понятно, вопрос снят.

Добавлено через 1 час 55 минут
>Subrealist
для чего я написал
C++
1
char hexStr[] = "0x\0";
?
ну - "\0" это ноль-терминатор строки.
а "0x" - это для дальнейшего преобразования числа в hex-формате
функцией _strtoui64, в справке по которой сказано, что
строку в шеснадц-ом формате можно перевести в целое, если
в начале строки будут символы "0x" (или еще парочка каких-то...).
Так вот у меня данные в txt файле имеют hex формат, но без "0x":
к прим.: 00a00000087c910a.
Вот так вот...
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
30.05.2012, 15:28     Run-Time Check Failure #2 - Stack around the variable 'hexStr' was corrupted #4
tytus, ноль-символ не нужно задавать явно, он добавится в любом случае, если только не указан размер массива.
tytus
0 / 0 / 0
Регистрация: 29.04.2012
Сообщений: 15
30.05.2012, 15:54  [ТС]     Run-Time Check Failure #2 - Stack around the variable 'hexStr' was corrupted #5
>Toshkarik
ноль-символ не нужно задавать явно
не ненужно - а - можно не задавать явно... никто-ж не запрещает
Toshkarik
 Аватар для Toshkarik
1139 / 856 / 51
Регистрация: 03.08.2011
Сообщений: 2,381
Завершенные тесты: 1
30.05.2012, 16:02     Run-Time Check Failure #2 - Stack around the variable 'hexStr' was corrupted #6
Дело не в запрете, а в читабельности кода, явное приписывание нуль символа при инициализации массива символов можно отнести к категории извращений. Но да, Вам никто не запрещает, это всего лишь совет, если Вы вдруг будете писать код, который потом будет разбирать кто-то еще
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.05.2012, 16:05     Run-Time Check Failure #2 - Stack around the variable 'hexStr' was corrupted
Еще ссылки по теме:

C++ Run-Time Check Failure #2 - Stack around the variable 'A' was corrupted
Run time check failure #2 stack around the variable was corrupted C++
C++ Ошибка Run-Time Check Failure #2 - Stack around the variable 'B' was corrupted

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
tytus
0 / 0 / 0
Регистрация: 29.04.2012
Сообщений: 15
30.05.2012, 16:05  [ТС]     Run-Time Check Failure #2 - Stack around the variable 'hexStr' was corrupted #7
гут, всем спасибо!
Yandex
Объявления
30.05.2012, 16:05     Run-Time Check Failure #2 - Stack around the variable 'hexStr' was corrupted
Ответ Создать тему
Опции темы

Текущее время: 16:31. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru