Например,
char str1[]= “adc”; //массив из 4 элементов типа char, элемент str2[3]= ‘\0’ – признак конца строки.
Как указатель на строковую константу
Например,
char *str2= “abc”; // указатель на строковую константу
Для строк не определено специальных операций, они обрабатываются как обычные массивы. Однако в отличии от массивов других типов, можно считать все символы строки с клавиатуры можно с помощью одной операции чтения из потока cin, Следует помнить, что в этом случае считается только символы по первого пробельного разделителя. Кроме того, всю строку можно вывести на экран с помощью операции чтения в поток cout.
Например
char s[10];
cin>>s; // для массивов других типов эта операция недопустима.
Если на клавиатуре набрать строку «мама мыла раму», то в массив запишется только слово «мама», то есть в массиве будет 5 элементов со значениями ‘м’, ‘а’, ‘м’, ‘а’, ‘\0’.
cout<<s; //на экран выведется вся строка «мама», для массивов других типов в данном случае выведется только адрес памяти первого элемента.
|
|
При выводе символьного массива с помощью объекта cout из памяти выводятся подряд все символы, начиная с первого и до тех пор, пока не встретится символ ‘\0’. Поэтому, если символьный массив инициализирован списком (а не строковой константой) или заполнятся в цикле ответственность за то, чтобы последний символ был символом конца строки, ложится на плечи программиста.
Например,
char s={‘m’, ‘a’, ‘m’};
cout<<s;//на экран выведется mamЁ@kj^^ и т.п.
Существует функции стандартной библиотеки, которые позволяют копировать, сравнивать, объединять строки, выделять подстроки, определять длину строки, считывать строки с клавиатуры и файла. (Они описаны в заголовочных файлах stdio.h, stdlib.h, string.h)
Например,
# include <iostream.h>
# include <stdio.h>
# include <stdlib.h>
main ()
{
const int n1=20;
int n2=20;
char str1[n1];
char *str2=new char [n2];
gets(str1);//считываем строку
cout<<"\n"<<str1<<"\n";
cin.getline(str2,n2);//считываем строку
cout<<"\n"<<str2<<"\n";
cout<<strlen(str1)<<" "<<strlen(str2);// выводим на экран длины строк
}
Кроме того, существует класс string, который описан в заголовочном файле cstring.h.
Тема 1. 3. Структура программы на языке С++. (См. в пособии, стр.5 - 8).
Важно помнить, что программа в общем случае состоят из 4-х основных компонентов – директив, описаний, функций и комментариев.