mark.zlatoust.ru Послать письмо Webmaster-у Web-Master © Бернадинер Марк 

Златоуст.Ru

 

 

STRING(3C)                                           STRING(3C)

НАЗВАНИЕ 
        string:  strcat,  strncat,  strdup,  strcmp,   strncmp,
        strcpy,  strncpy,  strlen,  strchr,  strrchr,  strpbrk,
        strspn, strcspn, strtok - операции с цепочками символов

СИНТАКСИС 
        #include 
        #include 

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

        char *strncat (s1, s2, n)
        char *s1, *s2;
        size_t n;

        char *strdup (s1)
        char *s1;

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

        int strncmp (s1, s2, n)
        char *s1, *s2;
        size_t n;

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

        char *strncpy (s1, s2, n)
        char *s1, *s2;
        size_t n;

        int strlen (s)
        char *s;

        char *strchr (s, c)
        char *s;
        int c;

        char *strrchr (s, c)
        char *s;
        int c;

        char *strpbrk (s1, s2)
        char *s1, *s2;

        int strspn (s1, s2)
        char *s1, *s2;

        int strcspn (s1, s2)
        char *s1, *s2;

        char *strtok (s1, s2)
        char *s1, *s2;

ОПИСАНИЕ 
        Аргументы s1, s2 и s представляют  собой  указатели  на
        цепочки символов, завершающиеся  нулевым  байтом.  Ниже
        для краткости вместо выражения "цепочка, указателем  на
        которую служит s1" употребляется выражение "цепочка s1"
        или просто "s1".

        Каждая из функций strcat, strncat, strcpy и strncpy из-
        меняет цепочку s1. Эти функции не осуществляют  провер-
        ку переполнения массива, на который указывает s1.

        Функция strcat подцепляет копию цепочки s2 к концу  це-
        почки s1. Функция strncat подцепляет не более n  симво-
        лов. Каждая из них возвращает указатель  на  результат,
        завершающийся нулевым байтом.

        Функция strdup возвращает указатель на  новую  цепочку,
        представляющую собой дубликат цепочки  s1.  Память  под
        новую  цепочку  отводится  путем  обращения  к  функции
        malloc(3C). При нехватке памяти, когда новая цепочка не
        может быть создана, функция  strdup  возвращает  пустой
        указатель NULL.

        Функция strcmp сравнивает свои аргументы  и  возвращает
        целое число, меньшее нуля, равное ему или большее  него
        в соответствии с тем, предшествует ли цепочка s1 лекси-
        кографически цепочке s2, совпадает с ней,  или  следует
        за ней. Функция strncmp осуществляет такое  же  сравне-
        ние, но принимает во внимание не более n первых  симво-
        лов.

        Функция strcpy осуществляет копирование  цепочки  s2  в
        s1, прекращая его сразу после того, как скопирован  ну-
        левой байт. Функция strncpy осуществляет копирование  в
        точности n символов, при необходимости  усекая  s2  или
        добавляя нулевые байты в s1. Результат не будет  завер-
        шаться нулевым байтом, если s2 имеет длину n или более.
        Обе функции возвращают указатель s1.

        Функция strlen возвращает число символов,  содержащихся
        в цепочке s, не считая завершающего нулевого байта.

        Функция  strchr (strrchr) возвращает значение указателя
        на первое (последнее) вхождение символа c в цепочку  s,
        либо  значение  NULL, если цепочка этого символа не со-
        держит. Завершающий нулевой байт цепочки рассматривает-
        ся при этом как ее составная часть.

        Функция strpbrk возвращает значение указателя на первое
        вхождение  в  цепочку s1 какого-либо символа из цепочки
        s2, либо значение NULL, если  цепочка  s1  не  содержит
        символов из цепочки s2.

        Функция  strspn  (strcspn)  возвращает длину начального
        фрагмента цепочки s1, состоящего из  символов,  которые
        содержатся (не содержатся) в цепочке s2.

        Функция  strtok рассматривает цепочку s1, как состоящую
        из некоторого (быть может, нулевого) числа лексем,  от-
        деленных  друг от друга одним или несколькими символами
        из набора разделителей s2. При первом вызове (с  задан-
        ным  s1) возвращается указатель на первый символ первой
        лексемы, а в цепочку s1 сразу, вслед за найденной  лек-
        семой,  записывается  нулевой байт. Функция отслеживает
        его положение в цепочке от вызова  к  вызову,  так  что
        последующие  вызовы (при которых значение первого аргу-
        мента должно задаваться  как  NULL)  будут  работать  с
        фрагментом  цепочки  s1,  непосредственно  следующим за
        этой лексемой. Таким образом, за несколько вызовов  це-
        почка s1 будет просмотрена и все лексемы исчерпаны. Це-
        почка  разделителей s2 может меняться от вызова к вызо-
        ву. По исчерпании лексем функцией strtok будет  возвра-
        щено значение NULL.

        Для удобства пользователя все эти  функции  описаны  во
        включаемом файле .

СМ. ТАКЖЕ 
        malloc(3C), malloc(3X).

ОГРАНИЧЕНИЯ 
        Функции strcmp и strncmp используют аппаратное  сравне-
        ние символов. Поэтому результаты сравнения цепочек, со-
        держащих символы со старшим битом, равным единице,  ма-
        шинно-зависимы. В данной системе подобные символы трак-
        туются как отрицательные числа.

        Так как пересылка символов осуществляется по-разному  в
        различных реализациях, перекрытие областей памяти может
        привести к неожиданным результатам.



 

 

Бернадинер Марк Абрамович

Мое резюме

Компьютерная страничка

Ресурсы сети

Фотоальбом

 

 

 

mark.zlatoust.ru Послать письмо Webmaster-у Web-Master © Бернадинер Марк