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

Динамические массивы - C++

Восстановить пароль Регистрация
 
Sysfa1l
5 / 5 / 1
Регистрация: 31.03.2010
Сообщений: 71
02.10.2010, 10:02     Динамические массивы #1
C++
1
2
3
4
5
int memory=MAX_PATH;
    char* htmlBuff =(char*) malloc(memory * sizeof(char));
 
    for (int i=0 ; i<260 ; i++)
        htmlBuff[i]='1';
То что содержится в массиве после вышеприведенного кода. Что за ерунда в конце ?Т.е. почему malloc выделил память на 12 элиментов больше ?
11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111ээээ««««««««
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.10.2010, 10:02     Динамические массивы
Посмотрите здесь:

C++ динамические массивы ?
C++ Динамические массивы
Динамические массивы C++
C++ Динамические массивы
C++ Динамические массивы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dihlofos
Бродяга
 Аватар для dihlofos
302 / 256 / 17
Регистрация: 27.08.2010
Сообщений: 553
02.10.2010, 10:35     Динамические массивы #2
Может не из-за malloc'a проблема, а потому что не задан конец строки? Если попробовать так:
C++
1
2
3
for (int i=0 ; i<memory ; i++)
     htmlBuff[i]='1';
htmlBuff[memory-1]='\0'; // нуль-символ в последний элемент массива
lom80
4 / 4 / 0
Регистрация: 03.06.2010
Сообщений: 55
02.10.2010, 11:08     Динамические массивы #3
А почему ты решил, что malloc выделил память на 12 элементов больше? Ты скорее всего вышел за пределы своего массива.
CyBOSSeR
Эксперт C++
 Аватар для CyBOSSeR
2293 / 1663 / 86
Регистрация: 06.03.2009
Сообщений: 3,675
02.10.2010, 12:03     Динамические массивы #4
Sysfa1l, как сказал dihlofos не хватает символа терминатора строки.
Андрейка
408 / 212 / 22
Регистрация: 25.03.2009
Сообщений: 714
02.10.2010, 16:25     Динамические массивы #5
Sysfa1l, да и про free не забудьте в конце.
Yandex
Объявления
02.10.2010, 16:25     Динамические массивы
Ответ Создать тему
Опции темы

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