Мобильность и машинная зависимость программ. Проблемы с русскими буквами.
Мобильность и машинная зависимость программ. Проблемы с русскими буквами.
Программа считается мобильной, если она без каких-либо изменений ее исходного текста (либо после настройки некоторых констант при помощи #define и #ifdef) транслируется и работает на разных типах машин (с разной разрядностью, системой команд, архитектурой, периферией) под управлением операционных систем одного семейства. Заметим, что мобильными могут быть только исходные тексты программ, объектные модули для разных процессоров, естественно, несовместимы!
Напишите программу, печатающую размер типов данных char, short, int, long, float, double, (char *) в байтах. Используйте для этого встроенную операцию sizeof. Составьте мобильную программу, выясняющую значения следующих величин для любой машины, на которой работает программа:- Наибольшее допустимое знаковое целое.
- Наибольшее беззнаковое целое.
- Наибольшее по абсолютной величине отрицательное целое.
- Точность значения |x|, отличающегося от 0, где x - вещественное число.
- Наименьшее значение e, такое что машина различает числа 1 и 1+e (для вещественных чисел).
#define EOF (-1) #define NULL ((char *) 0) /* или ((void *)0) */
Ответ: НЕТ. Во-первых, эти константы уже определены в include-файле, подключаемом по директиве
#include <stdio.h>
поэтому правильнее написать именно эту директиву. Во-вторых, это было бы просто неправильно: конкретные значения этих констант на данной машине (в данной реализации системы) могут быть другими! Чтобы придерживаться тех соглашений, которых придерживаются все стандартные функции данной реализации, вы ДОЛЖНЫ брать эти константы из <stdio.h>.
По той же причине следует писать
#include <fcntl.h>
int fd = open( имяФайла, O_RDONLY); /* O_WRONLY, O_RDWR */ вместо int fd = open( имяФайла, 0); /* 1, 2 */
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий