Можно ли сохранить двойные числа di git в беззнаковых символах в c ++ - PullRequest
1 голос
/ 19 января 2020

Для школьного задания я должен сохранить строковые значения от 0 до 255 в беззнаковом векторном символе. обычно я бы просто использовал для этого строки или целые числа, но нам было специально сказано использовать безымянный символ.

После более подробного изучения неподписанных символов кажется, что он может сохранить код ASCII от 0 до 255 (правильно ли я понял?). Так можно ли даже сохранить двойное (или тройное до 255) ди git число в беззнаковом символе?

Большое вам спасибо. Мне очень жаль, если это очень просто c, но я все еще новичок в c ++.

Ответы [ 3 ]

0 голосов
/ 19 января 2020

Несмотря на свое имя, беззнаковый символ не содержит символов ASCII (или не ASCII). Он содержит целочисленные значения, хранящиеся в виде серии битов. Каждый бит равен 0 или 1. Так как в символе есть 8 битов, у нас есть последовательности, такие как 10010111, 00010110, 00000010 и т. Д. c. Это двоичные (или «base-2») числа, поскольку при их написании мы используем только 2 цифры («0» и «1»). Когда вы говорите «два числа git» или «три числа git» в своем вопросе, вы говорите о нашей повседневной системе base-10, которая использует 10 цифр (от 0 до 9) для записи чисел. Вы должны прочитать немного о числах base-2, чтобы понять это лучше. Но основа c в том, что беззнаковый символ содержит целое число от 0 до 255, и не имеет значения, как мы пишем его на нашем обычном человеческом языке. Их называют char, потому что исторически они часто использовались для представления символов текста. Обычно целое число, хранящееся в символе, использовалось для «поиска» символа в таблице ASCII.

0 голосов
/ 19 января 2020

В беззнаковых символах вы можете хранить числа от 0 до 255, поэтому ответом на ваш вопрос будет ДА , вы можете хранить 3 ди git числа, но обратите внимание на не переполняйте емкость или сохраняете только последний бит (или 8 бит) информации.

Если вы храните в нем символы со своим кодом, вам нужно использовать подписанный символ или, лучше, массив подписанного символа, это будет похоже на строку.

0 голосов
/ 19 января 2020

Да, вы можете сохранить до 255.

Поскольку, char имеет 8 бит (1 байт), это означает, что он может хранить до 256 номеров (2 8 номеров). )

  • Если это signed char, он может хранить от -128 до 127.
  • Если это unsigned char, он может сохранять от 0 до 255 (только положительные числа).

Просто запомните, если у вас есть n биты:

  1. Для signed: -2 n- От 1 до 2 n-1 -1.
  2. Для unsigned: от 0 до 2 n -1.
...