Для обработки строк в Си определено много библиотечных функций. Строковые функции объявлены в заголовочном файле <string.h>
Наиболее часто используются следующие функции:
Имя функции | Выполняемое действие |
strcpy(s1,s2) | Копирование s2 в s1 |
strcat(s1,s2) | Конкатенация (объединение) s2 в конец s1 |
strlen(s1) | Возвращает длину строки s1 |
strcmp(s1,s2) | Возвращает 0, если s1 и s2 совпадают, отрицательное значение, если s1<s2, положительное значение, если s1>s2 |
strchr(s1,ch) | Возвращает указатель на первое вхождение символа ch в строку s1 |
strstr(s1,s2) | Возвращает указатель на первое вхождение строки s2 в строку s1 |
Замечание: Сравнение в функции strcmp() происходит в лексикографическом порядке.
Пример:
#include <stdio.h>
#include<string.h>
int main()
{
char s1[]="Password";
char s2[]="pass";
char s3[]="pasport";
char s4[]="Password";
printf("%d\t%d\t%d\n", strcmp(s1,s2),strcmp(s2,s3),strcmp(s1,s4));
return 0;
}
//Результат выполнения программы: -1 1 0
Основные функции ввода – вывода
Функция | Выполняемое действие |
getchar() | Читает символ с клавиатуры. Ожидает возврат каретки. |
getche() | Читает символ, при этом он отображается на экране. Не ожидает возврата каретки. В стандарте Си не определена. |
getch() | Читает символ, но не отображает его на экране. Не ожидает возврата каретки. В стандарте Си не определена. |
putchar() | Отображает символ на экране. |
gets() | Читает строку символов, введенную с клавиатуры, и записывает по адресу, на который указывает аргумент. Ввод осуществляется, пока не введен <enter>. |
puts() | Отображает строку символов на экране. |
|
|