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

Инициализировать массив строк типа std::string - C++

Восстановить пароль Регистрация
 
FortranDLL
0 / 0 / 0
Регистрация: 05.03.2014
Сообщений: 94
08.01.2016, 12:50     Инициализировать массив строк типа std::string #1
Есть массив из строк, надо присвоить ему значения.
Возникла странная проблема. Вот код:
C++
1
2
3
4
5
6
7
8
9
string StrName[50];
i = 1;
 
    while ( i < 50 )
    {
        i++;
        StrName[i] = '0';
        
      }
При запуске зависает. Что я делаю не так?
Лучшие ответы (1)
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
SuperKir
103 / 103 / 58
Регистрация: 10.03.2015
Сообщений: 444
08.01.2016, 12:54     Инициализировать массив строк типа std::string #2
Сообщение было отмечено автором темы, экспертом или модератором как ответ
FortranDLL,
1. Отсчет в массиве начинается с 0
2. При i=49, мы войдем в цикл и получим 50, и присвоение 50му элементу массива выкинет ИС (искл.сит)
3. Это строки, а не символы, кавычки двойные.
Hikari
Хитрая блондиночка $)
 Аватар для Hikari
1339 / 902 / 272
Регистрация: 21.12.2015
Сообщений: 3,613
08.01.2016, 13:09     Инициализировать массив строк типа std::string #3
Уверен, что зависает именно тут?
трассировал код?
FortranDLL
0 / 0 / 0
Регистрация: 05.03.2014
Сообщений: 94
08.01.2016, 13:34  [ТС]     Инициализировать массив строк типа std::string #4
SuperKir, очень точно, спасибо!
Yandex
Объявления
08.01.2016, 13:34     Инициализировать массив строк типа std::string
Ответ Создать тему
Опции темы

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