Re: Приведение типов при bitwise операциях
От: AlexVBibe  
Дата: 17.06.03 14:49
Оценка: -1
Здравствуйте, Denn, Вы писали:

D>
D>    char a; char b; char c;
D>    c = a | b & c;
D>


Нет это не ошибка, тип char имеет размер 8 бит, а компилятор при генерации кода для логических команд использует 32 разрядные регистры, в следствии чего после вычисления выражения a | b & c будет присваивание из 32 разрядного регистра в 8 разрядную переменную, что бы избежать этого соообщения
достаточно написать c = char(a | b & c).
PS: Кстати студия 7.1 уже не генерит никаких сообщений
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.