почему в типе данных char языка программир. си мин. значение -128 при макс. 127, а не наоборот (-127 и 128)?

язык си чар

Ответы:
Потому что считаю с начала... -128, -127 и т.д. 0 и 1,2, ... 127
И это всё равно 256 байта
потому что 1111111 = 127 и еще один бит на знак идет
Просто решили, что будет именно так.
тип Char - беззнаковый :) т.е. нетути отрицательных символов все считаются в диапазоне от 0 до 255
а вот тип short int имеет да именно такой диапазон от -128 до +127 , как правильно указали ниже причина этого в битовом представлении числа, на знак отводится самый старший бит, по этому отрицательных чисел больше, т.к. положительным числам последний бит заполнять нельзя
тип char, конечно. знаковый в С.  хотя обычно есть возможность указать компилятору, знаковость char. В С++ это ещё более неоднозначно. Там есть 3 типа,
char
signed char
unsigned char
так удобно хранить отрицательные числа. чтоб процессор не разбирался по знаковуму биту, положительное это число или отрицательное, а просто выполнял операцаю сложения (даже вместо вычитания). в каком именно формате записывается чисто читай тут


15 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.