char *strncat(char *str1, const char *str2, size_t count)
char far * far _fstrncat(char *str1, const char *str2, size_t count)
Прототип:
Описание:
Функция strncat() добавляет к строке, на которую указывает str1, не более count символов из строки, на которую указывает str2. В конце модифицированной строки str1 функция ставит нулевой символ. Нулевой символ, первоначально завершавший строку str1, замещается первым символом строки str2. Строка str2 остается в первоначальном виде.Функция strncat() возвращает указатель str1.
Надо иметь в виду, что функция не производит контроля границ, поэтому программист должен сам позаботиться о том, чтобы строка str1 была достаточно длинной и могла вместить помимо своего первоначального содержимого еще и содержимое строки str2.
Функция _fstrncat() является FAR-версией функции strncat().
Пример:
Следующая программа подсоединяет первую строку, считанную из stdin, ко второй. Если, например, пользователь введет «hello» и «there», программа выведет «therehello». Программа предотвращает возможность переполнения массива, на который указывает str1. #include <stdio.h> #include <string.h> int main(void) { char s1[80], s2[80]; size_t len; gets (s1); gets (s2); /* вычисление реально вмещающегося числа символов */ len = 79-strlen (s2); strncat(s2, s1, len); printf (s2); return 0; }
