Статья: Теория вычислительных процессов и структур
;
switch (*p)
{
case ‘Y’:
case ‘y’:
return (YES);
case ‘N’:
case ‘n’:
return (NO);
default:
printf (“\n%s\n”, error);
}
}
}
Обратными процедурами для gets и fgets будут соответственно процедуры puts и fputs:
# include <stdio.h>
int puts (const char *string);
int fputs (const char *string, FILE *outf);
Процедура puts записывает все символы (кроме завершающего нулевого символа) из строки string на стандартный вывод (stdout). Процедура fputs записывает строку string в поток outf. Для обеспечения совместимости со старыми версиями системы процедура puts добавляет в конце символ перевода строки, процедура же fputs не делает этого. Обе функции возвращают в случае ошибки значение EOF.
Для осуществления форматированного вывода используются процедуры printf и fprintf:
# include <stdio.h>
int printf (const char *fmt, arg1, arg2 … argn);
int fprintf (FILE *outf, const char *fmt, arg1, arg2 … argn);
Каждая из этих процедур получает строку формата вывода fmt и переменное число аргументов произвольного типа, используемых для формирования выходной строки вывода. В выходную строку выводится информация из параметров arg1 … argn согласно формату, заданному аргументом fmt . В случае процедуры printf эта строка затем копируется в stdout. Процедура fprintf направляет выходную строку в файл outf.
Для каждого из аргументов arg1 … argn должна быть задана своя спецификация формата, которая указывает тип соответствующего аргумента и способ его преобразования в выходную последовательность символов ASCII.
Рассмотрим пример, демонстрирующий использование формата процедуры printf в двух простых случаях:
int iarg = 34;
…
printf (“Hello, world!\n”);