Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпора по информатике).doc
Скачиваний:
1
Добавлен:
01.07.2025
Размер:
700.93 Кб
Скачать

63. Ввод-вывод строк с использованием функций puts(), fputs(), printf(), gets(), fgets(), scanf().

Для ввода строки с помощью функции scanf() используется спецификатор %s.

В качестве аргумента используется указатель на первый символ строки.(символ & не ставится): scanf(“%s”,str);

Спецификатор %s не может записывать в строку пробельные символы.

Предварительно пробельные символы стоящие в верхнем буфере ввода удаляются.

Считывание символов и пробельных символов. scanf(“%s”,s);

Функция gets()

Функция считывает символы из stdin и помещает их в строку , адресуемую указателем str.

Считывание происходит до символа \n или EOF

В функции gets() у программиста отсутствует возможность ограничить количество записываемых в массив символов (равно количеству символов введенных пользователю).

Функция fgets()

Функция fgets() считывает из потока n-1 символов и помещает их в строку , адресуемую указателем str.

Для ввода с клавиатуры stdin (-//- -//- stdin)

Функция fgets() считывает символы до символа ‘\n’ или EOF.

Fgets(s,6,stdin) (копируется 5 символов)

Функция printf()

Имеет следующий формат

Int printf(char*format,….)

Строка формата может быть представлена в виде строк константы

printf(“Hello”)

Либо в виде указателя на первый элемент

char str[]=”Hello”

printf(str);

В функции printf() можно использовать спецификатор преобразования для строк %s

В качестве аргумента указывается указатель на первый элемент.

Функция puts()

Int puts(char*str)

Функция puts() записывает строку, адресуемую параметром str, в стандартное выходное устройство. После символа ‘\0’ преобразуется в символ перехода на новую строку.

Функция puts() выводит на экран символы в строке до ‘\0’.

Функция fputs()

fputs*(str,потк)

Функция fputs() записывается в данный поток содержимое строки, адресуемой указателем str.

Вывод строковой константы “Hello” на экран (стандартный поток stdout).

fputs(“Hello”, stdout).

64. Обработка строк. Библиотека строковых функций string.H.

Прототип

Описание

int strlen(const char *s);

Возвращает число символов (исключая завершающие пробелы) в строке s

char *strcpy (char *restrict s1, const char *restrict s2);

Копирует строку, указанную указателем s2 (включая пустой символ), на место, указанное указателем s1; возвращает s1.

сhar *strstr(const char *s1, const char *s2);

Возвращает указатель на положение первого появления последовательности символов из s2 в строке s1 (исключая завершающие пробелы); возвращает NULL, если совпадений не найдено.

int strcmp(const char *s1, const char *s2);

Сравнивает строки, указанные указателями s1 и s2; две строки идентичны, если совпадают все пары; иначе строки сравнивают по первой несовпадающей паре; символы сравниваются с помощью значений кодов символов; функция возвращает нуль, если строки одинаковы; значение, которое меньше нуля, если первая строка меньше второй; и значение, превышающее нуль, если первая строка больше второй.

сhar *strchr(const char *s, int c);

Ищет первое появление c (преобразованного в char) в строке, указанной указателем s; пустой символ является частью строки; возвращает указатель на первое появление c или NULL, если ничего не найдено.

char *strcpy(char *restrict s1, const char *restrict s2);

Копирует строку, указанную указателем s2 (включая пустой символ), на место, указанное указателем s1; возвращает s1.

char *strcat(char *restrict s1, const char *restrict s2);

Дополняет копию строки, указанную указателем s2 (включая пробелы), в размещение, указанное указателем s1; первый символ строки s2 переписывает пустой символ строки s1; возвращает s1.

12

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]