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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
krezo
0 / 0 / 0
Регистрация: 07.12.2013
Сообщений: 4
#1

ЗАполнение - C++

21.12.2013, 00:01. Просмотров 217. Ответов 2
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
struct person
{ 
    char*name;
    char *adres;
    int age;
};
 
void input (person *c, int kol)
 { char str[225]; int p;
 for (int i =0;i<kol;i++)             //Иду по массиву указателей
 { cout << "Введите имя : " << endl;
   cin >> str;                        //Получаю от пользователя имя
    p = strlen(str);                  //Считаю длину строки
    c[i].name = new char[p];          //Выделяю память под символы
    for (int j=0;j<p;j++)             //Иду по кол-ву симолов
     c[i].name[j] = str[j]  ;         //Присваиваю указателю символ
    
 }
 }
Когда вывожу полученные элементы структуры выводит строку и за ней еще символы "ээээ<<<<<<юоюою"
ввожу стоку "asd" на выходе "asdээээ<<<<<юоюоюо"

Пытаюсь сделать по-другому : создаю массив строк и каждому указателю присваиваю начало строки.
ввожу строку "asd" на выходе непонятное : такое же кол-во симолов но не "asd"
Все хорошо когда прохожу функцию в окне отладки, в указателе строка;

Добавлено через 14 минут
Решил проблему функцией strcopy();
Кто-нибудь объяснит почему лишние символы добавлялись?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2013, 00:01     ЗАполнение
Посмотрите здесь:

Заполнение массива - C++
помогите решить задачу. заранее спасибо.;)

Заполнение массива - C++
Здравствуйте, подскажите, как заполнить массив например из 10 000 элементов по условию задачи мне нужно работать с числами от &quot;0001&quot; до...

Заполнение массива - C++
Доброго дня, уважаемые форумчане! В очередной раз сталкиваюсь с небольшой проблемой, суть ее заключается в следующем. Есть два массива...

Заполнение массива - C++
Даны числа от 0 до 15 (включительно), нужно записать их в одномерный массив в рандомном порядке, при этом числа не должны повторяться ...

Заполнение массива - C++
Извините, что флудю, просто в старой теме уже не отвечают. data::data(int f){ if (f==1) ...

Заполнение массива - C++
Рандомно заполнить массив из 8 элементов таким образом чтобы все его элементы при просмотре с лева на право образовывали убывающую...

Заполнение матрицы - C++
Всем привет. Нужно написать заполнение двумерного динамического массива. Вот как у меня это выглядит: есть класс Matrix: Matrix.h ...

Заполнение массива - C++
Добрый день. Объясните,пожалуйста, следующий момент. Есть кусок кода: void fill(struct member *p){ printf(&quot;\nFill your name...

Заполнение класса - C++
Уважаемые форумчане я понимаю что вопрос плёвый, но есть у меня пробелы со строками! Прошу сильно не критиковать! Проблема в следующем я...

Заполнение структуры - C++
Вот есть такая программа, как мне сделать чтобы я не вводил данные каждый раз, а программа сама заполняла все поля? #include...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dzrkot
zzzZZZ...
519 / 349 / 53
Регистрация: 11.09.2013
Сообщений: 1,996
21.12.2013, 00:06     ЗАполнение #2
'\0'
Kuzia domovenok
1890 / 1745 / 118
Регистрация: 25.03.2012
Сообщений: 5,924
Записей в блоге: 1
21.12.2013, 00:38     ЗАполнение #3
C++
1
p=strlen(str)+1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru