Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Модификация объектов



Модификация или видоизменение объектов в языке Си применяется для того, чтобы расширить или, наоборот, сузить диапазон значений или область действия объекта. Инструкции, которые применяются для модификации, называются модификаторами.

Модификатор unsigned. Предназначен для того, чтобы объявлять переменные типов short, int, long беззнаковыми. Если переменную сделать беззнаковой, то при этом расширяется числовой диапазон абсолютного значения переменной. Это происходит из-за того, что один бит, который использовался под знак, используется под число.

Пример

-32768 <= int i <= 32768

О <= unsigned int i <= 65535

Пример

unsigned int i; unsigned long j;

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

Пример

main()  
{  
int i,j;  
long k;  
i= 30000;  
j= 20000;  
k= i+j; /^ОШИБКА!! i -k /

printf("\n%d+%d=%ld", i, j, k); }

Несмотря на то, что к объявлена как long, результат вычисления выражения

i+J получается типа int, поскольку / и j объявлены как int. В то же время значение

выражения выходит за границу типа int. Для того, чтобы не было ошибки,

необходимо модифицировать переменные следующим образом:

k=(long)i+(long]j;.

Таким образом, если необходимо явным образом изменить тип данных, который используется в выражениях, то перед объектами в круглых скобках нужно указать тот тип, который необходимо получить.

Модификатор extern предназначен для использования в данном программном модуле объекта, который объявлен в другом отдельном модуле.

Пример

extern тип объект 1, объект 2,...,объект п;





Дата публикования: 2014-11-04; Прочитано: 298 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...