Strcmp си описание
Strcpy(), strcat(), strlen(), strcmp()
Вызов функции strcpy() имеет вид strcpy(s1,s2).Содержимое строкиs2копируется встрокуs1.
Вызов функции strcat() имеет вид strcat(s1,s2).Функция strcat() присоединяет строку s2к строке s1 и помещает ее в массив, где находится строка s1, при этом строка s2 не изменяется. Нулевой байт, который завершал строку s1, будет заменен первым символом строки s2.
Пример использования данных функций
#include
#include
Void main(void)
char s1[20],s2[20];
strcpy(s1,”Hello, “);
strcpy(s2,”World!”);
Puts(s1);
Puts(s2);
Strcat(s1,s2);
Puts(s1);
Puts(s2);
Вызов функции strcmp() имеет вид strcmp(s1,s2).Функция strcmp() сравнивает строки s1 и s2и возвращает значение 0, если строки равны, то есть содержат одно и то же число одинаковых символов. Сравнение в лексикографическом смысле. Если s1 лексикографически (в смысле словаря) больше s2, то функция возвращает положительное значение, если меньше, то отрицательное значение.
Вызов функции strlen() имеет вид strlen(s).Функция возвращает длину строки s, при этом завершающий нулевой байт не учитывается.
#include
#include
Void main(void)
char s[80];
printf(”Введите строку: “);
Gets(s);
printf(“Строка n %s n имеет длину %d символов n”,s,strlen(s));
Функции из стандартной библиотеки для работы со строками
- char *strcat(char *dest, char *source) – конкатенация строк destи source.
- char *strncat(char *dest, char *source, unsigned maxlen) – присоединяет maxlenсимволов строки source к строке dest.
- char *strchr(char *source, char ch) – поиск в строке source первого вхождения символа ch.
- int strcmp(char *s1, char *s2) – возвращает 0, если s1 = = s2, возвращает 0, если s1>s2.
- int strncmp(char *s1, char *s2, int maxlen) – возвращает 0, если s1 = = s2, возвращает 0, если s1>s2.Сравниваются только первые maxlenсимволов.
- int stricmp(char *s1, char *s2) – возвращает 0, если s1 = = s2, возвращает 0, если s1>s2.Не проверяются регистры букв.
- int strnicmp(char *s1, char *s2, int maxlen) – возвращает 0, если s1 = = s2, возвращает 0, если s1>s2.Сравниваются только первые maxlenсимволов. Не проверяются регистры букв.
- char *strcpy(char *dest, char *source) – копирование строки sourceв строкуdest.
- char *strncpy(char *dest, char *source, unsigned maxlen) – копирование maxlenсимволов строки sourceв строкуdest.
- int strlen(char *s) –выдает число символов в строке без учета нулевого символа конца строки.
- char *strlwr(char *s)– переводит всю строку в нижний регистр (в строчные буквы)
- char *strupr(char *s)– переводит всю строку в верхний регистр (в прописные буквы)
- char *strdum(char *s) –вызывает функцию malloc и отводит место под копию s.
- char *strset(char *s, char ch) – заполняет всю строку символами ch.
- char *strnset(char *s, char ch, unsigned n) – заполняет первые nпозиций строки sсимволами ch.
- char *strrev(char *s)– инвертирует все буквы в строке s.
- int strcspn(char *s1, char *s2) –возвращает длину начального сегмента строкиs1,которая состоит исключительно из символов, не содержащихся в строкеs2.
- char *strpbrk(char *s1, char *s2) –просмотр строкиs1до тех пор, пока в ней не встретится символ, содержащийся вs2
- char *strrchr(char *s, char ch) – просматривает строку s до последнего появления в ней символа ch.
- int strspn(char *s1, char *s2) –возвращает длину начального сегмента строкиs1,который состоит исключительно из символов из строкиs2
- char *strstr(char *s1, char *s2) –возвращает указатель на позицию вхождения строкиs2в строкуs1.Если вхождения нет, то значение указателяNULL.
- char *strtok(char *s1, char *s2) – предполагается что строка s1 состоит из фрагментов, разделенных одно- или многосимвольными разделителями из строки s2. При первом обращении к strtok выдается указатель на первый символ первого фрагмента строки s1. последующие вызовы с заданием нуля вместо первого аргумента будут выдавать адреса дальнейших фрагментов из строки s1 до тех пор, пока фрагментов не останется.
Язык С допускает многомерные массивы, простейшей формой которых является двумерный массив
(two-dimensional array). Двумерный массив a[3][4] можно представить в виде таблицы
Функции обработки строк в Cи
В программе строки могут определяться следующим образом:
- как строковые константы;
- как массивы символов;
- через указатель на символьный тип;
- как массивы строк.
Кроме того, должно быть предусмотрено выделение памяти для хранения строки.
Любая последовательность символов, заключенная в двойные кавычки «» , рассматривается как строковая константа .
Для корректного вывода любая строка должна заканчиваться нуль-символом ‘