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
いくつかの例を見てみましょう。
文字 cvar = 50;
文字 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。
整数データ型を比較する
正と負の値の両方を許可するグループまたはデータ型、つまり「符号付き」があります。ただし、暗黙的に指定されるため、指定する必要はありません。以下を参照してください:
| データ型 | 最小値 | 最大値 |
|---|---|---|
| チャー | -2 7 または -128 | または |
| 短い | -2 15 または -32,768 | 年1月 - 1または32,767 |
| 整数 | -2 31 または -2,147,483,648 | – または 2,147,483,647 |
| 長さ | -2 31 または -2,147,483,648 | – または 2,147,483,647 |
| 長い長い | -2 63 または -9,223,372,036,854,775,808 | 2 63 – 1 または 9,223,372,036,854,775,807 |
正の値、つまり「符号なし」のみを許可するグループまたはデータ型があります。
| データ型 | 最小値 | 最大値 |
|---|---|---|
| 符号なし文字 | 0 | または |
| 未署名のショート | 0 | 1月 日 - 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 は
バイト、long は
バイト
long long は 8 バイト
float は 4 バイト
double は 8 バイトバイトとはどういう意味ですか?
「バイト」はデータストレージの標準単位です。
1 バイト = 8 ビット。 1 ビットは、1 と 0 (2 進値) の値のみを持つことができる最小のメモリ単位です。ただし、システムから取得できるメモリの最小単位は 1 バイトです。したがって、1.5バイトなどを要求することはできません。
チャーを見てみましょう。短いので簡単に表示できます。
すべて 1 で埋められると、28-1 になります。この値は、「unsigned char」が保持すべき最大値である必要があります。
システムは、負の値を与えるために 最上位ビット を予約しています。したがって、「char」の最大値は -128 ~ 127 の範囲になります。ただし、データ範囲は異なりますが、容量は「unsigned char」と同じです。
コンピューターでは、2 の補数と呼ばれる演算が使用されます。これはビットごとの操作のトピックの一部であり、このドキュメントの範囲外です。このトピックの詳細については、別のドキュメントで説明します。
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;
char 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, "So '%c' - '%c' = %d ", cX2, iX, cX2 - cX1);
出力:
'0' の整数表現 = 48
'1' の整数表現 = 49
'2' の整数表現 = 50
したがって '2' - '0' = 1
なぜ「0」が 48 を示すのか疑問に思うかもしれません。
これは、「ASCII コード」変換と呼ばれるトピックにつながります。 ASCII 標準は、1963 年に発行された IEEE の偉大なマイルストーンの 1 つです。これはこの記事の範囲外です。 ASCII コード表をオンラインで検索することをお勧めします。 ASCII コード テーブルに関する情報はオンラインで大量に見つかります。