The VEX Visual Studio Code Extension has replaced VEXcode Pro V5, which is now end-of-life.
VEXcode Blocks and VEXcode Text remain actively developed and supported for all VEX platforms.
Типы, содержащие целые числа: char, short, int, long, long long
Давайте посмотрим на несколько примеров:
символ квар = 50; символов квар = 50; короткий свар = 50; int ивар = 50; длинных lvar1 = 50; длинных lvar2 = 50;
Основные арифметические операторы:
Большинство знакомы с основными арифметическими операторами и порядком старшинства: + , -, *, /
Вот несколько примеров использования унарного оператора: ++ и --:
| Выражение | Эквивалентно | Также эквивалентно |
|---|---|---|
| квар += 5; | квар = квар + 5; | |
| ++квар; | квар++; | квар = квар + 1; |
| --квар; | вар--; | квар = квар - 1; |
Остерегайтесь переменной ++ и переменной ++!
++переменная
интервал х = 10, у = 20; Х = ++у;
Примечание: после этой операции: X = 21, и Y тоже = 21.
переменная++
интервал х = 10, у = 20; Х = у++;
Примечание: после этой операции: X = 20 и Y = 21.
Сравнить целочисленные типы данных
Существует группа или тип данных, который допускает как положительные, так и отрицательные значения — «подписанные». Однако вам не нужно указывать это, поскольку это неявно. См. ниже:
| Тип данных | Наименьшее значение | Наибольшее значение |
|---|---|---|
| голец | -2 7 или -128 | 2 7 - 1 или 127 |
| короткий | -2 15 или -32 768 | 2 15 – 1 или 32 767 |
| интервал | -2 31 или -2 147 483 648 | 2 31 – 1 или 2 147 483 647 |
| длинный | -2 31 или -2 147 483 648 | 2 31 – 1 или 2 147 483 647 |
| долго долго | -2 63 или -9 223 372 036 854 775 808 | 2 63 – 1 или 9 223 372 036 854 775 807 |
Существует группа или тип данных, который допускает только положительное значение — «без знака».
| Тип данных | Наименьшее значение | Наибольшее значение |
|---|---|---|
| беззнаковый символ | 0 | 2 8 - 1 или 255 |
| беззнаковый короткий | 0 | 2 16 - 1 или 65 535 |
| беззнаковое целое число | 0 | 2 32 – 1 или 4 294 967 295 |
| беззнаковый длинный | 0 | 2 32 – 1 или 4 294 967 295 |
| беззнаковый длинный длинный | 0 | 2 64 – 1 или 18 446 744 073 709 551 615 |
Как вы проверяете размер данных?
На данный момент вам следует знать оператор sizeof( ). Это обеспечивает единицу хранения памяти, называемую «байтами», которая будет немного рассмотрена в следующем разделе.
Пример, чтобы сообщить вам, сколько байт следует ввести с помощью оператора sizeof(). Попробуйте это, чтобы проверить их самостоятельно. Если вы перейдете на другой контроллер, вы всегда можете сделать следующее для проверки.
Brain.Screen.setFont(fontType::mono30); Brain.Screen.printAt(1, 20, «char имеет %d байт», sizeof(char)); Brain.Screen.printAt(1, 50, «short имеет %d байта», sizeof(short)); Brain.Screen.printAt(1, 80, «int имеет %d байт», sizeof(int)); Brain.Screen.printAt(1, 110, "long имеет %d байт", sizeof(long)); Brain.Screen.printAt(1, 140, "long long имеет %d байт", sizeof(long long)); Brain.Screen.printAt(1, 170, "float имеет %d байт", sizeof(float)); Brain.Screen.printAt(1, 200, "double имеет %d байт", sizeof(double));
Что означает байт?
«Байт» — это стандартная единица хранения данных.
Один байт = 8 бит. Один бит — это наименьшая единица памяти, которая может иметь значения только 1 и 0 (двоичное значение). Однако наименьшая единица памяти, которую вы можете получить от системы, составляет 1 байт; поэтому вы не можете запросить 1,5 байта и т. д.
Давайте посмотрим на char. Он достаточно короткий, чтобы его можно было легко отобразить.
Если все заполнено единицами, вы получите 28-1. Это значение должно быть максимальным значением «unsigned char», которое должно храниться.
Система резервирует бит старшего порядка , чтобы дать отрицательное значение. Таким образом, максимальное значение «char» варьируется от -128 до 127. Однако емкость по-прежнему такая же, как у «беззнакового символа», несмотря на разницу в диапазоне данных.
В компьютере используется операция, называемая дополнением двойки. Это часть темы побитовых операций, которая выходит за рамки данного документа. Подробнее об этой теме будет сказано в другом документе.
В чем разница между char и int?
Вот некоторые распространенные варианты использования «char» и «int»:
символ var1 = '9'; int var2 = 9;
Распространено заблуждение, что «char» может содержать только такие символы, как «a», «b» или «9». Это неправильно.
Фактически тип «char» аналогичен типу «int», за исключением того, что емкость char составляет всего 1 байт, а емкость int — 4 байта. Таким образом, диапазон размеров данных у них разный. Вы можете видеть это в таблице диапазонов данных выше.
Следующие сегменты кода дадут вам более четкое представление о char и int.
интервал iX = '0'; символов cX1 = 49; символ cX2 = 50; Brain.Screen.printAt(3, 20, "int представление '%c' = %d",iX, iX); Brain.Screen.printAt(3, 50, "int представление '%c' = %d",cX1, cX1); Brain.Screen.printAt(3, 80, "int представление '%c' = %d",cX2, cX2); Brain.Screen.printAt(3, 140, "Так '%c' - '%c' = %d ", cX2, iX, cX2 - cX1);
Выход:
int представление '0' = 48 int представление '1' = 49 int представление '2' = 50 Итак, '2' – '0' = 1
Вы можете задаться вопросом: почему «0» означает 48?
Это приведет к теме, называемой «Преобразование кода ASCII». Стандарт ASCII — это одна из важнейших вех IEEE, опубликованная еще в 1963 году. Это выходит за рамки данной статьи. Вам рекомендуется просмотреть таблицу кодов ASCII в Интернете. В Интернете вы найдете множество информации о кодовой таблице ASCII.