Классно объяснил и раскрыл тему 2 кодов, cs-50 не так подробно раскрыли данную тему. У меня вопрос, Что происходит при переполнении буфера и чем это грозит, да и вообще, что значит?
И все равно непонятно почему char 0bx1000 0000 это не 0 а -128. А char 0bx10000001 это не -1 а -127. И диапазон не от -127 до 127 а от -128 до 127. Чудны дела твои, Господи.
Диапазон же вроде как зависит от 1 и 0 в самой первой ячейке, отвечающий за знак. В отрицании там единица и соответственно 11111111 это 128, а при положительном знаке там будет 0 -> 01111111 Макс. Следовательно 127
Не перестаёшь радовать! Спасибо! )
Эх, вот бы видео про работу с UTF-8 (Unicode) в С. Спасибо за видео, я продвигаюсь вперед по книжке и с Вами.
Классно объяснил и раскрыл тему 2 кодов, cs-50 не так подробно раскрыли данную тему. У меня вопрос, Что происходит при переполнении буфера и чем это грозит, да и вообще, что значит?
И все равно непонятно почему char 0bx1000 0000 это не 0 а -128. А char 0bx10000001 это не -1 а -127. И диапазон не от -127 до 127 а от -128 до 127. Чудны дела твои, Господи.
Потому что число 0 считается как положительное, счет начинается не от 1 2 3 ... а от 0 1 2 и т. д. А отрицательные сразу с -1
Диапазон же вроде как зависит от 1 и 0 в самой первой ячейке, отвечающий за знак. В отрицании там единица и соответственно 11111111 это 128, а при положительном знаке там будет 0 -> 01111111 Макс. Следовательно 127