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.
Tam sayıları tutan tipler: char, short, int, long, long long
Bazı örneklere bir göz atalım:
karakter cvar = 50; karakter cvar = 50; kısa svar = 50; int ivar = 50; uzun lvar1 = 50; uzun lvar2 = 50;
Temel Aritmetik Operatörler:
Çoğu, temel aritmetik operatörlere ve öncelik sırasına aşinadır: +, -, *, /
Tekli operatörün nasıl kullanılacağına ilişkin bazı örnekler: ++ ve --:
| İfade | Eşdeğeri | Ayrıca Eşdeğerdir |
|---|---|---|
| cvar += 5; | cvar = cvar + 5; | |
| ++cvar; | cvar++; | cvar = cvar + 1; |
| --cvar; | cvar--; | cvar = cvar - 1; |
Değişken++ ve ++değişkene dikkat edin!
++değişken
int x = 10, y = 20; X = ++y;
Not: Bu işlemden sonra: X = 21 ve Y de = 21.
değişken++
int x = 10, y = 20; X = y++;
Not: Bu işlemden sonra: X = 20 ve Y = 21.
Tamsayı veri türünü karşılaştır
Hem pozitif hem de negatif değere izin veren bir grup veya veri türü vardır - "imzalı". Ancak örtülü olduğu için bunu belirtmenize gerek yoktur. Aşağıya bakınız:
| Veri türü | En küçük değer | En büyük değer |
|---|---|---|
| karakter | -2 7 veya -128 | 2 7 - 1 veya 127 |
| kısa | -2 15 veya -32.768 | 2 15 - 1 veya 32.767 |
| int | -2 31 veya -2,147,483,648 | 2 31 – 1 veya 2.147.483.647 |
| uzun | -2 31 veya -2,147,483,648 | 2 31 – 1 veya 2.147.483.647 |
| uzunca | -2 63 veya -9,223,372,036,854,775,808 | 2 63 – 1 veya 9,223,372,036,854,775,807 |
Yalnızca pozitif değere (imzasız) izin veren bir grup veya veri türü vardır.
| Veri türü | En küçük değer | En büyük değer |
|---|---|---|
| imzasız karakter | 0 | 2 8 - 1 veya 255 |
| imzasız kısa | 0 | 2 16 - 1 veya 65.535 |
| imzasız int | 0 | 2 32 – 1 veya 4.294.967.295 |
| imzasız uzun | 0 | 2 32 – 1 veya 4.294.967.295 |
| imzasız uzun uzun | 0 | 2 64 – 1 veya 18.446.744.073.709.551.615 |
Veri boyutunu nasıl doğrularsınız?
Şimdilik sizeof( ) operatörünü bilmeniz gerekiyor. Bu, bir sonraki bölümde biraz ele alınacak olan "bayt" adı verilen bellek depolama birimini sağlar.
Sizeof(kullanarak yazmanız gereken bayt sayısını gösteren örnek. Bunları kendiniz doğrulamak için bunu deneyin. Başka bir denetleyiciye geçerseniz doğrulamak için her zaman aşağıdakileri yapabilirsiniz.
Brain.Screen.setFont(fontType::mono30); Brain.Screen.printAt(1, 20,"char %d byte'a sahiptir", sizeof(char)); Brain.Screen.printAt(1, 50,"kısa %d bayta sahiptir", sizeof(short)); Brain.Screen.printAt(1, 80,"int %d bayta sahiptir", sizeof(int)); Brain.Screen.printAt(1, 110, "long'un %d baytı vardır", sizeof(long)); Brain.Screen.printAt(1, 140, "long long %d byte'a sahiptir", sizeof(long long)); Brain.Screen.printAt(1, 170, "float %d bayta sahiptir", sizeof(float)); Brain.Screen.printAt(1, 200, "double %d byte'a sahiptir", sizeof(double));
Bayt ne anlama geliyor?
“Bayt” standart bir veri depolama birimidir.
Bir Bayt = 8 bit. Bir bit, yalnızca 1 ve 0 değerlerine (ikili değer) sahip olabilen en küçük bellek birimidir. Ancak sistemden alabileceğiniz en küçük bellek birimi 1 byte'tır; yani 1,5 bayt vb. isteyemezsiniz.
Char'a bir göz atalım. Kolayca görüntülenecek kadar kısadır.
Tamamı 1'lerle doluysa, 28-1 elde edersiniz. Bu değer “unsigned char”ın tutması gereken maksimum değer olmalıdır.
Sistem, negatif bir değer vermek için en yüksek dereceli bit ayırır. Dolayısıyla bir “karakter”in maksimum değeri -128 ile 127 arasında değişir. Ancak veri aralığındaki farklılığa rağmen kapasite hala "imzasız karakter" ile aynıdır.
Bilgisayarda İkinin Tamamlayıcısı adı verilen bir işlem kullanılır. Bu, Bitwise işlemi kapsamındaki konuların bir parçasıdır ve bu belgenin kapsamı dışındadır. Bu konu hakkında daha fazla bilgi başka bir belgede tartışılacaktır.
Char ve int arasındaki fark nedir?
"Char" ve "int" için bazı yaygın kullanımlar şunlardır:
karakter var1 = '9'; int var2 = 9;
"Char"ın yalnızca 'a', 'b' veya '9' gibi sembolleri tutabileceği yaygın bir yanılgıdır. Bu yanlış.
Aslında "char" türü "int" türüyle aynıdır, tek fark char'ın kapasitesinin yalnızca 1 bayt, int'nin kapasitesinin ise 4 bayt olmasıdır. Bu nedenle, veri boyutu aralığı ikisi arasında farklıdır. Bunu yukarıdaki veri aralığı tablosunda görebilirsiniz.
Aşağıdaki kod bölümleri size char ve int hakkında daha net bir görünüm sağlayacaktır.
int iX = '0'; karakter cX1 = 49; karakter cX2 = 50; Brain.Screen.printAt(3, 20, "'%c' = %dint gösterimi ",iX, iX); Brain.Screen.printAt(3, 50, "'%c' = %dint gösterimi ",cX1, cX1); Brain.Screen.printAt(3, 80, "'%c' = %dint gösterimi ",cX2, cX2); Brain.Screen.printAt(3, 140, "Yani '%c' - '%c' = %d ", cX2, iX, cX2 - cX1);
Çıktı:
'0'ın int gösterimi = 48 '1'in int gösterimi = 49 '2'nin int gösterimi = 50 Yani '2' – '0' = 1
Şunu merak edebilirsiniz: '0' neden 48'i gösteriyor?
Bu da “ASCII Kodu dönüşümü” denilen konulara yol açacaktır. ASCII standardı, 1963'te yayınlanan harika bir IEEE dönüm noktasıdır. Bu, bu makalenin kapsamı dışındadır. ASCII Kod Tablosunu çevrimiçi olarak aramanız önerilir. ASCII Kod Tablosu hakkında çevrimiçi olarak çok sayıda bilgi bulacaksınız.