|
Тема |
Re: внимавай с кодовете [re: zaphod] |
|
Автор |
dafh () |
|
Публикувано | 30.12.06 01:17 |
|
|
> по стандарт може да е от 0 до 255 (всъщност, мисля че стандарта покрива само до 128), но типа char, > който се ползва в С/С++ за представяне на символи, е тип със знак. което ще рече че кирилицата да речем в > кодиране 1251 е представена със отрицателни числа. аз лично дълги безсънни часове съм се чудил какви ли > мъки са отредени в ада, за този който е измислил знака на типа char.
> така или иначе, за да не стават обърквации, ако напишеш printf("%d",'Ж'); ще получиш -58, въпреки че > никъде нямаш тип чар тука. тоест като краен отговор на въпроса ти - в С/С++ кодирането е от -128 до 127.
printf("%d",'Ж'); ще изкара -58 защото %d е за signed integer
Иначе не виждам какво значение има знака на char, освен може би ако правиш някакъв shift left/right.
А и gcc, например, изобщо няма да ти се кара, ако на signed char (char = 8 bit) сложиш например 150.
|
| |
|
|
|