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
Давайте розглянемо кілька прикладів:
char cvar = 50;
char cvar = 50;
коротка сварка = 50;
int ivar = 50;
довгі lvar1 = 50;
довгих lvar2 = 50;
Основні арифметичні оператори:
Більшість знайомі з основними арифметичними операторами та порядком пріоритету: + , -, *, /
Ось декілька прикладів використання унарного оператора: ++ і --:
| Вираз | Еквівалентно | Також еквівалентно |
|---|---|---|
| cvar += 5; | квар = квар + 5; | |
| ++cvar; | cvar++; | квар = квар + 1; |
| --cvar; | чвар--; | квар = квар - 1; |
Остерігайтеся змінної++ проти ++змінної!
++ змінна
int x = 10, y = 20;
X = ++y;
Примітка: після цієї операції: X = 21, і Y також = 21.
змінна++
int x = 10, y = 20;
X = y++;
Примітка: після цієї операції: 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));
Текст, що друкується на екрані V5 Brain:
char має 1 байт
short має 2 байти
int має 4 байти
long має 4 байти
long long має 8 байтів
float має 4 байти
double має 8 байтівЩо означає байт?
«Байт» — стандартна одиниця зберігання даних.
Один байт = 8 біт. Один біт — це найменша одиниця пам’яті, яка може мати значення лише 1 і 0 (двійкове значення). Але найменшою одиницею пам'яті, яку ви можете отримати від системи, є 1 байт; тому ви не можете просити 1,5 байта тощо.
Давайте подивимося на char. Він досить короткий, щоб його було легко відобразити.
Якщо все це заповнено одиницями, ви отримаєте 28-1. Це значення має бути максимальним значенням «unsigned char».
Система резервує біт старшого порядку , щоб надати від’ємне значення. Таким чином, максимальне значення для «char» коливається від -128 до 127. Однак ємність залишається такою ж, як і «unsigned char», незважаючи на різницю в діапазоні даних.
У комп’ютері він використовує операцію під назвою «Доповнення двох». Це частина тем у розділі Побітова операція, яка виходить за межі цього документа. Детальніше про цю тему йтиметься в іншому документі.
Яка різниця між char і int?
Ось деякі звичайні способи використання "char" і "int":
char змінна1 = '9';
int змінна2 = 9;
Поширена помилкова думка, що "char" може містити лише такі символи, як "a", "b" або "9". Це неправильно.
Насправді тип «char» такий самий, як і тип «int», за винятком того, що ємність char становить лише 1 байт, а ємність int — 4 байти. Таким чином, діапазон розміру даних відрізняється між ними. Ви можете побачити це в таблиці діапазонів даних вище.
Наступні сегменти коду дадуть вам чіткіше уявлення про char та int.
int iX = '0';
char cX1 = 49;
char cX2 = 50;
Brain.Screen.printAt(3, 20, "цілочисельне представлення '%c' = %d",iX,iX);
Brain.Screen.printAt(3, 50, "цілочисельне представлення '%c' = %d",cX1,cX1);
Brain.Screen.printAt(3, 80, "цілочисельне представлення '%c' = %d",cX2,cX2);
Brain.Screen.printAt(3, 140, "Отже, '%c' - '%c' = %d ",cX2,iX,cX2 - cX1);
Вихід:
цілочисельне представлення '0' = 48
цілочисельне представлення '1' = 49
цілочисельне представлення '2' = 50
Отже '2' – '0' = 1
Ви можете запитати: чому «0» показує 48?
Це призведе до тем під назвою «перетворення коду ASCII». Стандарт ASCII є однією з основних віх IEEE, опублікованої ще в 1963 році. Це виходить за рамки цієї статті. Рекомендуємо вам знайти кодову таблицю ASCII в Інтернеті. Ви знайдете в Інтернеті безліч інформації про кодову таблицю ASCII.