Добавил:
Лабы/курсовые по программированию (С++/Verilog HDL), Теория и Практика Помехоустойчивого Кодирования Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
1сем Дагаев / lectures_3.pdf
Скачиваний:
44
Добавлен:
09.03.2022
Размер:
769.01 Кб
Скачать

● int.

При использовании в выражении операндов, имеющих разные ранги, тип операнда, имеющий меньший ранг, приводится к типу операнда, имеющего больший ранг. Например, если в выражении один операнд имеет тип double, а второй – long, то тип второго операнда должен быть преобразован к типу double.

Из этого правила существует одно исключение. Если один из операндов имеет тип long, а второй - unsigned, причем не все значения unsigned int могут быть представлены типом long, то оба операнда преобразуются к типу unsigned long.

Явное преобразование типа

Явное преобразование типа основано на применении оператора приведения типов. Общий вид применения оператора приведения типа имеет

следующий вид:

(тип ) выражение

Здесь тип – это любой тип, который поддерживается языком Си. Например, следующая запись позволяет преобразовать значение выражения x * y / 5 к типу float:

(float) (x * y / 5)

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

Оператор приведения типа является унарным оператором и имеет тот же приоритет, что и другие унарные операторы.

15.4.Математические функции

При написании арифметических выражений часто приходиться использовать стандартные математические функции, прототипы которых находятся в заголовочном файле math.h. Вызов функции состоит из ее имени и заключенного в круглые скобки списка фактических параметров. В качестве фактического параметра математических функций можно использовать арифметическое выражение. Ниже в таблице приведены прототипы некоторых математических функций.

Имя

Прототип

Описание

 

 

 

функции

int abs(int num);

 

 

 

 

abs

Вычисление модуля аргумента num

ceil

double ceil(double num);

Возвращает

наименьшее

целое,

 

 

которое

удовлетворяет

условию

 

 

>= num. Обратите внимание на тип

 

double cos(double num);

возвращаемого значения (double).

cos

Вычисляет

значение косинуса от

 

 

аргумента

num.

Значение

аргумента

 

double fabs(double num);

должно быть задано в радианах.

fabs

Вычисление

значение

модуля

 

double floor(double num);

аргумента num

 

 

floor

Возвращает

наибольшее

целое,

33

Соседние файлы в папке 1сем Дагаев