Хелпикс

Главная

Контакты

Случайная статья





const intlen_str=100;. char msg[len_str];. const intlen_str=100;. char msg[len_str] =Новая строка;. char *p= new char[len_str];. using namespace std;. int main(). const int n = 80;. char s[n];. return 0;



const intlen_str=100;

char msg[len_str];

При задании длины необходимо учитывать завершающий нуль-символ. Например, в строке, приведенной выше, можно хранить не 100 символов, а только 99. Строки можно при описании инициализировать строковыми константами, при этом нуль-символ в позиции, следующей за последним заданным символом, формируется автоматически:

const intlen_str=100;

char msg[len_str] ="Новая строка";

Если строка при определении инициализируется, ее размерность можно опускать (компилятор сам выделит память, достаточную для размещения всех символов строки и завершающего нуля):

char msg[ ] ="Новая строка";//13 символов

Для размещения строки в динамической памяти надо описать указатель на char, а затем выделить память с помощью new или mallос (первый способ предпочтительнее).

char *p= new char[len_str];

Естественно, что в этом случае длина строки может быть переменной и задаваться на этапе выполнения программы. Динамические строки, как и другие динамические массивы, нельзя инициализировать при создании.

Для ввода-вывода строк используются как уже известные нам объекты cin и cout, так и функции, унаследованные из библиотеки С.

Рассмотрим сначала первый способ:

#include "stdafx.h"

#include <iostream>

using namespace std;

int main()

{

const int n = 80;

char s[n];

cin >> s;

cout << s << endl;

return 0;

}

Строки вводится точно так же, как и переменные других типов.

При вводе строки из нескольких слов, программа выведет только первое слово. Это связано с тем, что ввод выполняется до первого пробельного символа (то есть пробела, знака табуляции или символа перевода строки '\n')

Если требуется ввести строку, состоящую из нескольких слов, в одну строковую переменную, используются методы getline или get класса istream, объектом которого является cin.

#include "stdafx.h"

#include <iostream>



  

© helpiks.su При использовании или копировании материалов прямая ссылка на сайт обязательна.