Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Б) Ввод-вывод строк - массивов char



Для ввода с консоли строк - массивов char обычно используются две стандартные функции:

scanf() (см. тему "Функции ввода-вывода"; спецификатор ввода %s; символ «&» перед именем массива типа char указывать не надо).Значения вводятся до появления первого символа “пробел”, а если его нет - до конца строки;

gets( char *S ) (запись"char *S" означает, что на ее место нужно подставить массив типа char; можно также подставить указатель на char - см. тему "Указатели"). Значения вводятся до конца вводимой строки (т.е., в отличие от scanf(), может вводить строку с пробелами как единое целое).

Обе функции автоматически ставят в конец строки нулевой байт.

Вывод строк производится функциями printf() или puts() до первого нулевого байта (‘\0’):

printf() (см. тему "Функции ввода-вывода"; спецификатор вывода %s) не переводит курсор после вывода на начало новой строки;

puts( char *S ) автоматически переводит курсор после вывода строковой информации в начало новой строки.

Например:

char Str[30];

printf("Введите строку без пробелов: \n");

scanf("%s",Str);

или

puts("Введите строку");

gets(Str);

В оконныхприложенияхC++ Builder'а изображаемый на экране текст, как правило, имеет тип String (или при необходимости автоматически преобразуется в String). Для вывода туда строки - массива char обычно достаточно просто подставить ее имя в функцию вывода:

Edit1->Text=Str;

Но для ввода оттуда такой строки необходимо использовать преобразование типов и копирование (объяснение см. ниже):

strcpy(Str, Edit1->Text.c_str());





Дата публикования: 2014-11-04; Прочитано: 419 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...