CodeNet / Языки программирования / C / C++ / Руководства и справочные материалы по C/C++ / Справочники по функциям / Справочник по функциям C/C++
cgets
cgets
Фукция Cчитывает строку с консоли.
Синтаксис #include<conio.h>
char *cgets(char *str);
Файл, содержащий conio.h
прототип
Описание cgets считывает символьную строку с консоли и
сохраняет ее (и длину строки) в буфере, указываемом
параметром str.
cgets считывает символы до тех пор, пока не
встретится комбинация CR/LF (возврат
каретки/перевод строки), или пока не будет считано
максимально возможное число символов. Если cgets
считала комбинацию CR/LF, она заменяет их на \0
(нулевой ограничитель строки) перед тем, как
сохранить строку.
До вызова cgets аргумент str[0] должен быть
установлен на максимальную длину считываемой
строки. При возврате str[1] содержит количество
считанных символов. Символы хранятся, начиная с
str[2], и заканчиваются нулевым символом. Итак,
аргумент str должен иметь размер, по крайней мере,
str[0] плюс 2 байта.
Возвращаемое При успешном завершении cgets возвращает указатель
значение на str[2].
Переносимость Эта функция поддерживается только на компьютерах
IBM PC или совместимых с ними. Функция не
совместима с Windows.
Смотрите также cputs, fgets, getch, getche, gets.
Пример:
#include <stdio.h>
#include <conio.h>
main()
{
char buffer[83];
char *p;
/* место под 80 символов и нулевой завершающий символ */
buffer[0] = 81;
p = cgets(buffer);
printf("\ncgets считала %d символов: \"%s\"\n",buffer[1], p);
printf("Возвращается указатель %p, buffer[2] на %p\n",p,&buffer);
/* место под 5 символов и завершающий 0 */
buffer[0] = 6;
printf("Введите несколько символов\n");
p = cgets(buffer);
printf("\ncgets считала %d символов: \"%s\"\n,buffer[1], p);
printf("Возвращается указатель %p, buffer[2] на %p\n",p,&buffer);
return 0;
}
