Справочная система C guide




Содержание


11 (Ic > 0 && '.Revflg));

1

/*

* обмен строк

*/

static void swap(iJ) register int i, j; /* элементы массива строк */

char *strcpy();

char temp [LINESIZE];

strcpy(temp. Line [i]);

strcpy(Line [i], Lme [j]);

strepy(Line [j], temp);

Структура программы 59

Пояснения к программе

А Поименованные константы, используемь-е во всей программе, обычно помещаются в отдельный файл, включаемый в другие файлы программы по мере необходимости. Поэтому при изменении этих параметров программы будет затронут только один файл.

В Включаемые файлы обычно помещаются в начало некоторого файла программы. Файл stdio h содержит описания файлов stdm. stdout и константы NULL, необходимых для использования функций fgets() и fputsQ

С Описания внешних переменных обычно размещаются в начале файла. В данной программе определены глобальный массив буфера строк и глобальный признак направления сортировки.

D Если функция main() использует формальные параметры, то они должны быть описаны. Функция main() выполняется первой.

Е Типы функций, вызываемых в теле функции, обычно описываются в начале тела функции.

F Переменная numlmes описана как локальная в блоке автоматическая целая переменная

G По соглашению первый аргумент argv, передаваемый функции main(), является именем программы; argv [l] — это второй аргумент и argv[l] [О] - это первый символ второго аргумента. Обратите внимание, что перед обращением к argv [l ] [0] проверяется число аргументов argc, так как при отсутствии второго аргумента выражение argv [l] [О] не имеет смысла.

И Функция rdlmesQ возвращает целое число прочитанных строк, так как она определена как имеющая тип mt. Прилагательное static указывает, что функция используется только в данном файле.

/ Переменная i определена как локальная в блоке. Описание register — это попытка ускорить выполнение цикла for

J Поскольку функция fgetsO возвращает значение типа char *,то это значение должно сравниваться с указателем на символ. Поэтому нулевой указатель NULL преобразуется к типу (char *).




Содержание  Назад  Вперед