Változók létrehozása egész számokhoz a VEXcode Pro V5-ben

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.

Egész számokat tartalmazó típusok: char, short, int, long, long long

Nézzünk néhány példát:

char cvar = 50;
char cvar = 50;
rövid svar = 50;
int ivar = 50;
hosszú lvar1 = 50;
hosszú lvar2 = 50;

Alapvető aritmetikai operátorok:

A legtöbben ismerik az alapvető aritmetikai operátorokat és az elsőbbségi sorrendet: + , -, *, /

Íme néhány példa az Unary operátor használatára: ++ és --:

Kifejezés Egyenértékű Szintén egyenértékű
cvar += 5; cvar = cvar + 5;  
++cvar; cvar++; cvar = cvar + 1;
--cvar; cvar--; cvar = cvar - 1;

Vigyázz a++ vs. ++ változóra!

++változó

int x = 10, y = 20; 
X = ++y;

Megjegyzés: a művelet után: X = 21, és Y is = 21.

változó++

int x = 10, y = 20; 
X = y++;

Megjegyzés: a művelet után: X = 20 és Y = 21.


Hasonlítsa össze az egész adattípust

Létezik egy csoport vagy adattípus, amely pozitív és negatív értéket is engedélyez – „előjeles”. Ezt azonban nem kell megadnia, mivel ez implicit. Lásd alább:

Adattípus Legkisebb érték Legnagyobb érték
char -2 7 vagy -128 2 7 - 1 vagy 127
rövid -2 15 vagy -32 768 2 15 - 1 vagy 32 767
int -2 31 vagy -2 147 483 648 – vagy 2 147 483 647
hosszú -2 31 vagy -2 147 483 648 – vagy 2 147 483 647
hosszú, hosszú -2 63 vagy -9 223 372 036 854 775 808 – vagy 9223372036854775807

Létezik olyan csoport vagy adattípus, amely csak pozitív értéket engedélyez – „unsigned”.

Adattípus Legkisebb érték Legnagyobb érték
aláíratlan karakter 0 2 8 - 1 vagy 255
aláíratlan rövid 0 2 16 - 1 vagy 65 535
aláíratlan belső 0 2 32 – 1 vagy 4 294 967 295
előjel nélküli hosszú 0 2 32 – 1 vagy 4 294 967 295
aláíratlan hosszú hosszú 0 vagy 18446744073709551615

Hogyan ellenőrizhető az adatméret?

Egyelőre ismernie kell a( ) size of( ) operátorát. Ez biztosítja a „bájtoknak” nevezett memóriatároló egységet – amelyről a következő részben lesz szó.

A bájtok számát a sizeof()operátor segítségével kell beírni. Próbálkozzon ezzel, hogy saját maga ellenőrizze őket. Ha másik vezérlőre vált, a következőket bármikor ellenőrizheti.

Brain.Screen.setFont(fontType::mono30);    
Brain.Screen.printAt(1, 20, "char %d bájt", sizeof(char));
Brain.Screen.printAt(1, 50, "short %d bájt", sizeof(short)); 
Brain.Screen.printAt(1, 80, "int %d bájt", sizeof(int));
Brain.Screen.printAt(1, 110, "long %d bájt", sizeof(long));
Brain.Screen.printAt(1, 140, "long long %d bájt", sizeof(long long));
Brain.Screen.printAt(1, 170, "float %d bájt", sizeof(float));
Brain.Screen.printAt(1, 200, "double %d bájt", sizeof(double));

A V5 Brain képernyőjére nyomtatott szöveg:

A char 1 bájtot tartalmaz
a short 2 bájtot, az int
bájtot, a long
bájtot,
long long 8 bájtot tartalmaz, a
float 4 bájtot, a
double 8 bájtot tartalmaz.

Mit jelent a bájt?

A „byte” az adattárolás szabványos egysége.

Egy bájt = 8 bit. Az egyik bit a legkisebb memóriaegység, amelynek csak 1-es és 0-s értéke lehet (bináris érték). A rendszerből megszerezhető legkisebb memóriaegység azonban 1 bájt; így nem kérhetsz 1,5 byte-ot stb.

Vessünk egy pillantást a charra. Elég rövid ahhoz, hogy könnyen megjeleníthető legyen.

Diagram, amely egy előjel nélküli karaktert mutat 8 bittel, 7-től 0-ig címkézve, és a megfelelő értékekkel 128-tól 1-ig, példákkal a 136-os és 255-ös értékek kiszámítására.

Ha minden 1-essel van megtöltve, 28-1-et kap. Ennek az értéknek kell lennie az „előjel nélküli karakter” maximális értékének.

Char adattípus diagramja 7 értékbittel és egy foglalt előjelbittel, példákkal a −120 és 127 értékek kiszámítására.

A rendszer fenntartja a legmagasabb rendű bitet, hogy negatív értéket adjon. Így a „char” maximális értéke -128 és 127 között van. A kapacitás azonban továbbra is ugyanaz, mint az „unsigned char”, az adattartománybeli eltérés ellenére.

A számítógépben a Kettő komplementjének nevezett műveletet használja. Ez a Bitwise művelet témaköreinek része, amely nem tartozik a dokumentum hatálya alá. Erről a témáról bővebben egy másik dokumentumban lesz szó.


Mi a különbség a char és az int között?

Íme néhány gyakori használat a "char" és az "int" kifejezésekre:

char változó1 = '9'; 
int változó2 = 9;

Általános tévhit, hogy a „char” csak olyan szimbólumokat tartalmazhat, mint az „a”, „b” vagy „9”. Ez helytelen.

Valójában a "char" típus megegyezik az "int" típussal, kivéve, hogy a char kapacitása csak 1 bájt, az int kapacitása pedig 4 bájt. Így az adatméret-tartomány eltér a kettő között. Ezt a fenti adattartomány-táblázatban láthatja.

A következő kódszegmensek világosabb képet adnak a char és int.

int iX = '0';
  karakter cX1 = 49;
  karakter cX2 = 50; 

  Brain.Screen.printAt(3, 20, "int reprezentációja '%c' =  %d",iX, iX);
  Brain.Screen.printAt(3, 50, "int reprezentációja '%c' =  %d",cX1, cX1);
  Brain.Screen.printAt(3, 80, "int reprezentációja '%c' =  %d",cX2, cX2);
  Brain.Screen.printAt(3, 140, "Tehát '%c' - '%c' =  %d ",cX2,iX, cX2 - cX1);

Kimenet:

A '0' int reprezentációja = 48
az '1' int reprezentációja = 49
a '2' int reprezentációja = 50

Tehát '2' – '0' = 1

Felmerülhet benned a kérdés: Miért mutatja a 0 48-at?

Ez az „ASCII kód” konverziónak nevezett témakörökhöz vezet. Az ASCII szabvány az IEEE egyik nagyszerű mérföldköve, amelyet még 1963-ban tettek közzé. Ez kívül esik a cikk hatókörén. Javasoljuk, hogy nézze meg az ASCII kódtáblázatot online. Az ASCII kódtáblázatról rengeteg információt talál az interneten.

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: