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



         

Зависимость от ЭВМ - часть 7


В файле /usr/mclude/varargs.h описаны средства для мобильного определения функций с переменным числом аргументов. Например, библиотечная функция pintf реализована с использованием этих средств.

Используйте стандартные библиотечные функции; не определяйте собственные системные вызовы, если без этого можно обойтись.

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

Для облегчения эксплуатации и увеличения мобильности программы определяйте все внешние переменные в отдельных исходных файлах. Не забудьте, что все остальные исходные файлы программы должны ссылаться на эти определения с помощью описаний extern. При этом можно использовать разные методы Можно поместить эти внешние описания в начало исходных файлов программы (с помощью включения файлов) или описать эти внешние переменные в функциях, которые их используют

Спецификацией здесь называется определяемая лексема, а реализацией - определяющее константное выражение.

Максимальное число значимых символов в идентификаторах внешних переменных и функций зависит от операционной системы Кроме того, некоторые операционные системы преобразуют все строчные буквы в прописные Компоновщик (редактор связей) со общает о конфликтах имен, но обнаруживает не все возможные ошибки, поэтому не возлагайте на эту программу обязанность разрешать противоречия в именах

Используйте описание typedef для локализации определения типов данных, зависящих от ЭВМ.

Описание typedef обеспечивает локальные определения типов тех данных, которые зависят от конкретной ЭВМ Если вы измените определение типа, заданное описанием typedef, то соответственно изменятся все переменные, описанные с помощью этого производного типа Система обеспечивает набор стандартных определений в файле

/usr/mclude/sys/types h

Пример

typedef unsigned short ino_t, /* индекс файла */

Этот пример показывает типичное использование определения

типа в файле /usr/mclude/sys/types h




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