[C言語] 変数を宣言するやり方について初心者向けに解説

C言語で変数を宣言する際には、まずデータ型を指定し、その後に変数名を記述します。

例えば、整数型の変数を宣言する場合はintを使用し、int number;のように記述します。

浮動小数点数を扱う場合はfloatdoubleを使用します。

文字を扱う場合はcharを使用し、char letter;のように宣言します。

変数は宣言時に初期化することも可能で、int number = 10;のように記述します。

これにより、プログラム内でデータを格納し、操作するための準備が整います。

この記事でわかること
  • C言語での変数宣言の基本構文とデータ型の指定方法
  • 変数名のルールと初期化の方法
  • 変数を用いた基本的な計算、条件分岐、ループ処理の例
  • 配列、ポインタ、構造体と変数の応用例

目次から探す

C言語における変数の宣言

C言語でプログラミングを行う際、変数の宣言は基本中の基本です。

ここでは、変数の宣言方法について詳しく解説します。

変数宣言の基本構文

C言語における変数の宣言は、以下の基本構文に従います。

データ型 変数名;

この構文では、まず変数のデータ型を指定し、その後に変数名を記述します。

セミコロン ; で文を終了します。

データ型の指定

変数を宣言する際には、データ型を指定する必要があります。

データ型は、変数がどのような種類のデータを保持するかを決定します。

以下は、C言語でよく使用されるデータ型の一覧です。

スクロールできます
データ型説明
int整数型
float単精度浮動小数点型
double倍精度浮動小数点型
char文字型

変数名のルール

変数名を付ける際には、以下のルールに従う必要があります。

  • 英字(大文字・小文字)と数字、アンダースコア _ が使用可能
  • 変数名の最初の文字は英字またはアンダースコアでなければならない
  • C言語の予約語(例:int, return)は使用不可

例:int score; は有効な変数宣言です。

初期化の方法

変数を宣言する際に、初期値を設定することができます。

これを初期化と呼びます。

初期化は以下のように行います。

データ型 変数名 = 初期値;

例として、整数型の変数 count を初期化する場合は次のように記述します。

int count = 10;

このように初期化することで、変数 count は宣言と同時に値 10 を持つことになります。

初期化を行うことで、予期しない動作を防ぐことができます。

変数の使用例

変数はプログラム内でデータを保持し、操作するために使用されます。

ここでは、変数を用いた基本的な計算、条件分岐、ループ処理の例を紹介します。

基本的な計算

変数を使って基本的な計算を行うことができます。

以下は、2つの整数を加算する例です。

#include <stdio.h>
int main() {
    int a = 5; // 整数型の変数aを5で初期化
    int b = 3; // 整数型の変数bを3で初期化
    int sum = a + b; // aとbを加算し、結果をsumに代入
    printf("Sum: %d\n", sum); // 結果を出力
    return 0;
}
Sum: 8

このプログラムでは、変数 a b にそれぞれ5と3を代入し、これらを加算して sum に格納しています。

条件分岐での使用

変数は条件分岐にも利用されます。

以下は、変数の値に基づいて異なるメッセージを表示する例です。

#include <stdio.h>
int main() {
    int score = 85; // 整数型の変数scoreを85で初期化
    if (score >= 90) {
        printf("Excellent\n"); // scoreが90以上の場合
    } else if (score >= 70) {
        printf("Good\n"); // scoreが70以上90未満の場合
    } else {
        printf("Needs Improvement\n"); // scoreが70未満の場合
    }
    return 0;
}
Good

このプログラムでは、変数 score の値に応じて、異なるメッセージを表示します。

ループ処理での使用

変数はループ処理でも重要な役割を果たします。

以下は、1から5までの数を出力する例です。

#include <stdio.h>
int main() {
    int i; // ループカウンタ変数iを宣言
    for (i = 1; i <= 5; i++) {
        printf("%d\n", i); // iの値を出力
    }
    return 0;
}
1
2
3
4
5

このプログラムでは、変数 i をループカウンタとして使用し、1から5までの数を順に出力しています。

ループ処理において、変数は反復回数の制御に利用されます。

変数の応用例

変数は基本的なデータの保持だけでなく、より複雑なデータ構造を扱う際にも重要な役割を果たします。

ここでは、配列、ポインタ、構造体といった応用例を紹介します。

配列と変数

配列は、同じデータ型の複数の値を一つの変数名で扱うことができるデータ構造です。

以下は、整数の配列を使用して、要素を出力する例です。

#include <stdio.h>
int main() {
    int numbers[5] = {10, 20, 30, 40, 50}; // 整数型の配列numbersを初期化
    for (int i = 0; i < 5; i++) {
        printf("Element %d: %d\n", i, numbers[i]); // 各要素を出力
    }
    return 0;
}
Element 0: 10
Element 1: 20
Element 2: 30
Element 3: 40
Element 4: 50

このプログラムでは、配列 numbers に5つの整数を格納し、ループを使って各要素を出力しています。

ポインタと変数

ポインタは、変数のメモリアドレスを格納するための変数です。

以下は、ポインタを使って変数の値を変更する例です。

#include <stdio.h>
int main() {
    int value = 100; // 整数型の変数valueを100で初期化
    int *ptr = &value; // ポインタptrにvalueのアドレスを代入
    printf("Before: %d\n", value); // 変更前のvalueを出力
    *ptr = 200; // ポインタを使ってvalueの値を変更
    printf("After: %d\n", value); // 変更後のvalueを出力
    return 0;
}
Before: 100
After: 200

このプログラムでは、ポインタ ptr を使って変数 value の値を変更しています。

ポインタは、メモリ操作や関数間でのデータの受け渡しに便利です。

構造体と変数

構造体は、異なるデータ型の変数を一つのまとまりとして扱うことができるデータ構造です。

以下は、構造体を使って個人情報を管理する例です。

#include <stdio.h>
// 個人情報を表す構造体
struct Person {
    char name[50]; // 名前
    int age;       // 年齢
    float height;  // 身長
};
int main() {
    struct Person person1; // 構造体変数person1を宣言
    // person1の各メンバに値を代入
    snprintf(person1.name, sizeof(person1.name), "Taro");
    person1.age = 30;
    person1.height = 175.5;
    // person1の情報を出力
    printf("Name: %s\n", person1.name);
    printf("Age: %d\n", person1.age);
    printf("Height: %.1f\n", person1.height);
    return 0;
}
Name: Taro
Age: 30
Height: 175.5

このプログラムでは、構造体 Person を定義し、person1 という変数を使って個人情報を管理しています。

構造体は、関連するデータを一つにまとめて扱うのに便利です。

よくある質問

変数を宣言しないとどうなるのか?

C言語では、変数を宣言せずに使用するとコンパイルエラーが発生します。

変数はメモリ上の特定の領域を指し示すため、宣言されていない変数を使用すると、プログラムはどのメモリ領域を参照すべきか分からず、エラーとなります。

例:int x; のように宣言が必要です。

変数名に使えない文字は?

変数名には、英字(大文字・小文字)、数字、アンダースコア _ が使用できますが、以下の文字は使用できません。

  • 空白や特殊記号(例:!, @, # など)
  • 変数名の最初に数字を使用すること(例:1stVariable は無効)
  • C言語の予約語(例:int, return など)

グローバル変数はどこで宣言するべきか?

グローバル変数は、プログラム全体でアクセス可能な変数です。

通常、グローバル変数は関数の外部、つまりファイルの先頭部分で宣言します。

これにより、プログラム内のすべての関数からアクセス可能になります。

ただし、グローバル変数の使用は、プログラムの可読性や保守性に影響を与える可能性があるため、必要最小限に留めることが推奨されます。

まとめ

C言語における変数の宣言と使用方法について理解することは、プログラミングの基礎を築く上で非常に重要です。

この記事では、変数の基本的な宣言方法から応用例までを詳しく解説しました。

これを機に、実際にコードを書いてみて、変数の使い方を体験してみてください。

  • URLをコピーしました!
目次から探す