[an error occurred while processing this directive]
|
1. В общем - да, не только. Ещё сюда наворачивается проверка соответсвия типов. Но лучше этим не злоупотреблять.
2.
unsigned char a;
unsigned short b;
b = a; //Без проблем.
a = b; //На это нормальный компилятор должен ругаться, что возможна потеря данных.
a = (unsigned char)b; //Компилятору сказали чтобы не вякал - программист сам знает чего хочет.
3.
unsigned char a;
unsigned char b;
a = 0x80;
b = a >> 100; //Большинство компиляторов глотают и не давятся. Так что - будь бдителен.
4. См. п.1. Проверка соответствия типов призвана подстраховать программиста от переполнения памяти. _Иногда_ это срабатывает.
5. Даже C-шные модули переименуй в CPP. Откомпилируй в Visual С++ - много нового о себе узнаешь :).
E-mail: info@telesys.ru