Строки. Инициализация строк. Функции для работы со строками
Строки
Строка – последовательность символов, заканчивающаяся символом ‘\0’.
Всякий раз, когда компилятор встречается с чем-то, заключенным в двойные кавычки, он определяет это как строковую константу. Символы, заключенные в кавычки, плюс завершающий символ ‘\0’, записываются в последовательные ячейки памяти.
Если нужно включить в строку символов символ двойной кавычки, ей должен предшествовать символ обратной косой черты.
Например:
char* s = “Symbol\””;
Инициализация строк
char s1[] = “Hello”;
char s2[] = {‘H’, ‘e’, ‘l’, ‘l’, ‘o’};
char *s3 = “Hello”;
char s4[100 ] = “Hello”;
Функции для работы со строками
atof
| double atof(char *str);
| Преобразует строку str в вещественное число двойной точности
| atoi
| int atoi(char * str);
| Преобразует строку str в десятичное целое
| atol
| long atoll(char *str);
| Преобразует строку str в длинное десятичное целое
| itoa
| char *itoa(int v, char* str, int baz)
| Преобразует целое v в строку str (2 <=baz<=36). Для отрицательного числа baz=10
| ltoa
| char ltoa(long v, char* str, int baz);
| Преобразует длинное целое v в строку str
| strcat
| char *strcat(char *sp, char* si);
| Приписывает строку si к строке sp
| strchr
| char *strchr(char *str, char c);
| Находит в строке str первое вхождение символа c.
| strcmp
| int strcmp(char *str1, char*str2);
| Сравнивает строки str1 и str2. Результат отрицателен, если str1<str2, равен нулю, если str1=str2, и положителен, если str1 > str2
| strcpy
| char *strcpy(char* sp, char* si);
| Копирует строку si в строку sp
| strcspn
| int strcspn(char *str1, char* str2);
| Определяет длину первого сегмента строки str1, содержащего символы, не входящие во множество символов str2
| strlen
| unsigned strlen(char *str);
| Вычисляет длину строки str
| strlwr
| char *strlwr(char *str);
| Преобразует буквы верхнего регистра в строке в буквы нижнего регистра
| stnucat
| char *strncat(char *sp, char* si, int kol);
| Приписывает kol символов строки si к строке sp
| strncmp
| int strncmp(char *str1, char* str2, int kol);
| Сравнивает строки str1 и str2, причем рассматриваются только первые kol символов. Результат отрицателен, если str1<str2, равен нулю, если str1=str2, и положителен, если str1 > str2
| strncpy
| char *strncpy(char *sp, char *si, int kol);
| Копирует kol символов строки si в строку sp
| strpbrk
| char *strpbrk(char * str1, char* str2);
| Находит в строке str1 первое появление любого из множества символов, входящих в строку str2
| strrchr
| char *strrchr(char* str, char c);
| Находит в строке str последнее вхождение символа c
| strspn
| int strspn(char *str1, char *str2);
| Определяет длину первого сегмента строки str1, содержащего символы из множества символов, входящих в строку str2
| strupr
| char *strupr(char *str);
| Преобразует буквы нижнего регистра в строке str в буквы верхнего регистра
| ultoa
| int *ultoa(unsigned long v, char *str, int baz);
| Преобразует беззнаковое длинное целое v в строку str
| Функции находятся в библиотеках <stdlib.h> и <string.h>
|