3.6  Предупреждения

Предупреждения могут появляться в тех случаях, когда компилятор автоматически выполняет некоторые стандартные преобразования и сообщает об этом программисту. Например, если переменной типа int (целое число) будет присвоено дробное значение, то автоматически произойдет округление. Это не означает, что в программе допущена ошибка, но поскольку преобразование типов данных происходит незаметно для программиста, компилятор считает своим долгом сообщить об этом.

Приведем еще пример. Большинство функций, объявленных в файле math.h, принимают аргументы и возвращают значения типа double (действительное число двойной точности). Если программа передаст одной из таких функций аргумент типа float (действительное число одинарной точности), компилятор, прежде чем направить данные в стек аргументов функции, выведет предупреждение о том, что тип данных float был преобразован в double. Программист может предотвратить появление предупреждений, если он будет явно преобразовывать типы данных в соответствии с правилами, принятыми в языке С.