Преобразование типов
В операторах и выражениях должны быть данные одного и того же типа. Но на Си возможно это нарушить (в отличии от Паскаля). Си компилятор автоматически преобразует типы, но следует соблюдать определенные правила:
1.Если производится операция над данными 2-х разных типов, то обе величины приводятся к высшему типу (происходит "повышение" типа).
2. Типы от высшего к низшему: double, float, long, int, short, char. Применение слова unsigned повышает ранг соответствующего типа со знаком.
3. В операторе присваивания конечный результат вычисления выражения в правой части приводится к типу переменной, которой должно быть присвоено это значение ( при этом может быть как повышение так и понижение типа). "Понижение" типа приводит к отбрасыванию разрядов.
4. При вычислениях величин типа float они автоматически преобразуются в тип double (для сохранения точности вычислений, это уменьшает ошибку округления). Конечный результат преобразуется обратно в float, если это диктуется оператором описания.
Операции приведения
Хотя в СИ и возможно преобразование типов, лучше избегать этого и указывать точно тип данных. Это называется привидением типов.
int num;
num = 1,6+1,7; 3,3 => 3. Сначала числа складываются, затем результат приводится к указанному типу.
num = (int)1,6+(int)1,7; 1+1 = 2. В это случае, числа сначала приведены к данному типу, а затем складываются.
Дополнительные операции присваивания
+ = (величина, стоящая справа, прибавляется к величине, расположенной слева)
n + = 13 тоже, что и n=n+13
- = (от величины, стоящей слева, отнимается величина, расположенная справа)
den - = 20 den = den-20
* = (величина слева умножается на величину справа)
n*=2 n = n*2
/ = делит переменную л.ч. на величину п.ч.
% = дает остаток от деления переменной л.ч. на величину п.ч.
<<=; >>=; | =; & =; ^ =; ~=;
ОПЕРАТОРЫ ЯЗЫКА СИ
Основу программы на Си составляют выражения, а не операторы. Большинство операторов в программе являются выражениями с ‘;’. Это позволяет создавать эффективные программы.
Оператор является законченной конструкцией языка Си. Операторы служат основными конструкциями при построении программы. Выражение состоит из операций и операндов (операнд – то, над чем выполняется операция, простейшее выражение может состоять из одного операнда). Оператор служит командой компьютеру. Операторы бывают простые и составные. Простые операторы оканчиваются ‘;’ .
Простые операторы:
1. Пустой оператор ‘;’
2. Оператор описания int x, y;
3. Оператор присвоенияcount = 0.0;
4. Оператор выражение (управляющий оператор)
sum = sum+count;
var = (var + 10)/4;
5.Оператор вызова функции
printf("Привет \n");
6. Оператор следоаания ‘,’
x=7, y=10;
Составные операторы или блоки:
Это группа операторов, заключенных в фигурные скобки {...}.
Дата добавления: 2018-11-25; просмотров: 421;