工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Industrial programming >> C言語

C - 変数

変数は、プログラムが操作できるストレージ領域に付けられた名前に他なりません。 C の各変数には、変数のメモリのサイズとレイアウトを決定する特定の型があります。そのメモリ内に格納できる値の範囲。および変数に適用できる操作のセット。

変数の名前は、文字、数字、およびアンダースコア文字で構成できます。文字またはアンダースコアで始まる必要があります。 C では大文字と小文字が区別されるため、大文字と小文字は区別されます。前の章で説明した基本的なタイプに基づいて、次の基本的な変数タイプがあります-

Sr.No. タイプと説明
1

文字

通常は 1 オクテット (1 バイト) です。整数型です。

2

整数

マシンにとって最も自然な整数のサイズ。

3

浮く

単精度浮動小数点値。

4

ダブル

倍精度浮動小数点値。

5

無効

型がないことを表します。

C プログラミング言語では、他のさまざまなタイプの変数を定義することもできます。これについては、列挙、ポインター、配列、構造体、共用体などの後続の章で説明します。この章では、基本的な変数タイプのみを学習しましょう。

C の変数定義

変数定義は、変数用に作成するストレージの場所と量をコンパイラーに伝えます。変数定義はデータ型を指定し、次のようにその型の 1 つ以上の変数のリストを含みます −

type variable_list;

ここに入力してください char、w_char、int、float、double、bool、または任意のユーザー定義オブジェクトを含む有効な C データ型である必要があります。および variable_list コンマで区切られた 1 つ以上の識別子名で構成されます。いくつかの有効な宣言をここに示します −

int    i, j, k;
char   c, ch;
float  f, salary;
double d;

int i, j, k; 変数 i、j、および k を宣言および定義します。これは、int 型の i、j、k という名前の変数を作成するようコンパイラに指示します。

変数は、その宣言で初期化 (初期値の割り当て) できます。初期化子は、次のように定数式が続く等号で構成されます-

type variable_name = value;

いくつかの例は-

extern int d = 3, f = 5;    // declaration of d and f. 
int d = 3, f = 5;           // definition and initializing d and f. 
byte z = 22;                // definition and initializes z. 
char x = 'x';               // the variable x has the value 'x'.

初期化子を使用しない定義の場合:静的記憶域期間を持つ変数は暗黙的に NULL で初期化されます (すべてのバイトの値は 0 です)。他のすべての変数の初期値は未定義です。

C の変数宣言

変数宣言は、指定された型と名前を持つ変数が存在することをコンパイラーに保証し、コンパイラーが変数に関する完全な詳細を必要とせずにさらにコンパイルを続行できるようにします。変数定義は、コンパイル時にのみ意味を持ちます。コンパイラは、プログラムのリンク時に実際の変数定義を必要とします。

変数宣言は、複数のファイルを使用していて、プログラムのリンク時に使用できるファイルの 1 つに変数を定義する場合に便利です。キーワード extern を使用します 任意の場所で変数を宣言します。 C プログラムでは変数を複数回宣言できますが、ファイル、関数、またはコード ブロックでは 1 回しか定義できません。

変数が上部で宣言されている次の例を試してください。ただし、それらはメイン関数内で定義および初期化されています-

ライブデモ
#include <stdio.h>

// Variable declaration:
extern int a, b;
extern int c;
extern float f;

int main () {

   /* variable definition: */
   int a, b;
   int c;
   float f;
 
   /* actual initialization */
   a = 10;
   b = 20;
  
   c = a + b;
   printf("value of c : %d \n", c);

   f = 70.0/3.0;
   printf("value of f : %f \n", f);
 
   return 0;
}

上記のコードをコンパイルして実行すると、次の結果が生成されます −

value of c : 30
value of f : 23.333334

関数の宣言時に同じ概念が適用され、宣言時に関数名を指定し、その実際の定義を他の場所で指定できます。たとえば-

// function declaration
int func();

int main() {

   // function call
   int i = func();
}

// function definition
int func() {
   return 0;
}

C の左辺値と右辺値

C には 2 種類の式があります −

変数は左辺値であるため、割り当ての左側に表示される場合があります。数値リテラルは右辺値であるため、割り当てられず、左側に表示されない場合があります。次の有効なステートメントと無効なステートメントを見てください −

int g = 20; // valid statement

10 = 20; // invalid statement; would generate compile-time error

C言語

  1. C# 変数と (プリミティブ) データ型
  2. C# 変数のスコープ
  3. C++ の変数、リテラル、および定数
  4. C の変数、定数、およびリテラル
  5. C ストレージ クラス
  6. Python グローバル キーワード
  7. Java 変数とリテラル
  8. C++ の変数と型:int、double、char、string、bool
  9. Verilog 割り当て
  10. Java - 変数の型
  11. C - スコープ ルール