Книга: Язык Си - руководство для начинающих
Рекомендации
Рекомендации
Какие переменные целого типа со знаком лучше всего использо вать? Одной из целей введения в язык трех классов целых чисел, имеющих различные размеры, было предоставить возможность согласования типа переменной с требованиями задачи. Например, если переменная типа int занимает одно слово, а переменная типа long - два, то тип long позволяет обрабатывать большие числа. Если в вашей задаче такие большие числа не используются, то незачем и вводить в программу переменную типа long, так как, если вместо числа, занимающего одно слово памяти, используется число, занимающее два слова, работа машины замедляется. Вообще говоря, необходимость введения данных типа long целиком зависит от вашей вычислительной системы, поскольку под данные типа int на одной машине может отводиться больше памяти, чем под данные типа long на другой. В конце мы еще раз хотим напомнить вам, что обычно вполне достаточно использовать переменную типа int.
Что происходит, когда в процессе обработки данных появляется значение, лежащее вне того диапазона чисел, которому соответствует данный целый тип? Давайте присвоим некоторой переменной целого типа наибольшее возможное значение, выполним операцию сложения и посмотрим, что произойдет
/* переполнение */
main( )
{
int i = 32767,
printf( %d %d %dn , i, i+l, i+2),
}
Ниже приведен результат работы этой программы, выполненной на нашей вычислительной системе
3
Целая переменная i ведет себя здесь как одометр2) в машине. Когда его показания достигают максимума, данная величина "сбрасывается", и все начинается сначала. Основное отличие состоит в том, что показания одометра растут, начиная с нуля, а значения нашей переменной типа int - с величины - 32768.
Заметим, что при этом вам не сообщают, что переменная i превысила максимальное значение Для регистрации подобных событий вы должны использовать свои программные средства.
Описанный подход не вытекает непосредственно из правил языка Си, а является довольно распространенным способом реализации.
- Общие рекомендации по безопасности
- Рекомендации по выбору архитектуры: Classic или SuperServer?
- 5.4. РЕКОМЕНДАЦИИ НАЧИНАЮЩИМ ПО СОСТАВЛЕНИЮ ОПИСАНИЙ АЛГОРИТМОВ И ЭВРОРИТМОВ
- Пример использования шаблона «Выводы – рекомендации»
- Общие рекомендации поиска неисправностей
- Рекомендации по замене и выбору МП
- Выводы и практические рекомендации
- Глава 2 Выбираем рассылочный сервис (требования, обзор существующих решений и личные рекомендации)
- Некоторые полезные рекомендации по веб-сайту
- Глава 5 Рекомендации для магазинов разной товарной специфики
- Рекомендации по выделению форматов магазинов
- Рекомендации по обработке событий в среде .NET Framework