У вас есть свой символьный указатель и вы хотите динамически создавать строки C
char *str;
говорят. Этот указатель будет использоваться для указания на первый символ строки. Строка представляет собой последовательность последовательных символов (байтов) в памяти. Что нам, чего добиться в памяти:
str -> +---+---+---+---+---+----+
| H | E | L | L | O | \0 |
+---+---+---+---+---+----+
Обратите внимание на последний байт - этот байт имеет значение 0 и называется нулевым символом - он представляет конец строки и позволяет легко узнать, когда мы подошли к концу.
Чтобы дать str
значение ne, выделите эту память. В C ++ это делается с помощью new operator
следующим образом
str = new char[6];
Обратите внимание, что new имеет две версии new [] и new - одна предназначена для размещения массива объектов, а другая - для выделения одного объекта. ВСЕГДА используйте delete [], когда вы разместили его с новым [], также следует использовать new / delete. НЕ СМЕШАТЬ новое [] с удалением, а новое с удалением []
Это выделит массив из 6 символов для размещения строки. Чтобы поместить символы в строку, мы делаем это.
str[0] = `H`;
str[1] = `E];
...
str[5] = 0;
Но это было бы утомительно. Вместо этого мы можем использовать strcpy , чтобы сделать это для нас:
strcpy(str, "hello");
Он знает все о нулевом символе. Существует ряд функций, которые работают с этими типами строк - см. string
Это С-струны. Когда-то кто-то изобрел этот новый язык под названием C ++. Этот язык использует другую идею, называемую объектами, которая делает этот материал намного проще. Вам нужно взглянуть на стандартную библиотеку шаблонов (или STL). Примечания к этим строкам можно найти по string . В STL много вкусностей - вот ссылка STL
Надеюсь, это поможет