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; | cvar = cvar + 5; | |
| ++cvar; | cvar++; | cvar = cvar + 1; |
| --cvar; | cvar--; | cvar = cvar - 1; |
Остерігайтеся змінної++ проти ++змінної!
++ змінна
int x = 10, y = 20; X = ++y;
Примітка: після цієї операції: X = 21, і Y також = 21.
змінна++
int x = 10, y = 20; X = y++;
Примітка: після цієї операції: X = 20 і Y = 21.
Порівняти цілочисельний тип даних
Існує група або тип даних, який допускає як додатне, так і від’ємне значення – «підписаний». Однак вам не потрібно вказувати це, оскільки це неявно. Дивись нижче:
| Тип даних | Найменше значення | Найбільше значення |
|---|---|---|
| char | -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 |
| unsigned int | 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. Однак ємність залишається такою ж, як і «unsigned char», незважаючи на різницю в діапазоні даних.
У комп’ютері він використовує операцію під назвою «Доповнення двох». Це частина тем у розділі Побітова операція, яка виходить за межі цього документа. Детальніше про цю тему йтиметься в іншому документі.
Яка різниця між char і int?
Ось деякі звичайні способи використання "char" і "int":
char var1 = '9'; int var2 = 9;
Поширена помилкова думка, що "char" може містити лише такі символи, як "a", "b" або "9". Це неправильно.
Насправді тип «char» такий самий, як і тип «int», за винятком того, що ємність char становить лише 1 байт, а ємність int — 4 байти. Таким чином, діапазон розміру даних відрізняється між ними. Ви можете побачити це в таблиці діапазонів даних вище.
Наступні сегменти коду дадуть вам чіткіше уявлення про char та int.
int iX = '0'; char 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.