Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

C言語における変数の宣言・初期化・代入の基本をわかりやすく解説


変数とは

変数の主な役割は、データをメモリ上に格納することです。定数とは異なり、変数はプログラムの実行中にその値を変更することができます。

変数を「宣言」するということは、オペレーティングシステムに対して、その変数名を使ってメモリ領域を確保することを伝えることを意味します。

変数の宣言

変数宣言の基本的な構文は以下の通りです。

型 変数名;

複数の変数を一度に宣言することもできます。

型 変数名1, 変数名2, 変数名3;

具体的な例を見てみましょう。

int a,b;
float c;
double d;

この例では、a、b、c、dが変数であり、int、float、doubleはそれぞれ整数型・単精度浮動小数点型・倍精度浮動小数点型を表すデータ型です。

変数の初期化

変数の初期化とは、宣言と同時に値を設定することです。構文は以下の通りです。

データ型 変数名 = 値;

例:

int width, height=20;
char letter='R';
float base, area; // 変数の宣言
double d;
/* 実際の初期化 */
width = 10;
area = 26.5;

このように、宣言時に初期化できる変数と、後から別途値を代入して初期化する変数があります。

変数への代入

変数への代入とは、すでに宣言された変数に値を割り当てる処理のことです。

例:

int height = 40;
int base = 31;

変数名を定義する際のルール

  • 変数名には、英字・数字・アンダースコア(_)を使用できます。

  • 変数名は英字またはアンダースコアで始めることができますが、数字で始めることはできません。

  • 変数名に空白(スペース)を含めることはできません。

  • 予約語やキーワード(int、gotoなど)を変数名として使用することはできません。

サンプルプログラム

以下は、変数の宣言と代入を行うCプログラムの完全な例です。

#include <stdio.h>
int main (){
    /* 変数の定義 */
    int a, b;
    int c;
    float f;
    /* 実際の初期化 */
    a = 40;
    b = 50;
    c = a + b;
    printf("value of c : %d \n", c);
    return 0;
}

実行結果

上記のプログラムをコンパイルして実行すると、次のような出力が得られます。

Value of c: 90

この結果から、変数aとbに代入した値40と50の合計90が、変数cに正しく格納されていることが確認できます。このように、変数を活用することで、プログラム内で柔軟にデータを扱うことが可能になります。

  1. 【C言語入門】ポインタと配列の関係をわかりやすく解説|スケールファクタとは

    ポインタと配列の基本的な関係 C言語では、コンパイラが配列のすべての要素に対して連続したメモリ領域を自動的に割り当てます。ここで重要になるのが「ベースアドレス」です。ベースアドレスとは、配列の先頭要素(0番目の要素)が格納されているメモリアドレスのことを指します。 例えば、次のように配列を宣言してみましょう。 int a[5] = {10, 20, 30, 40, 50}; この場合、5つの要素はメモリ上に以下のように順番に格納されます。 ここで変数「p」をint型へのポインタとして宣言すれば、次のいずれかの代入文によって、配列aの先頭アドレスをポインタに持たせることができます。 p =

  2. C言語の文字操作を徹底解説!宣言方法と入出力関数の使い方

    Cプログラミング言語において、文字(character)は英大文字(A〜Z)、英小文字(a〜z)、数字(0〜9)、空白(ホワイトスペース)、または特殊記号のいずれかとして扱われます。文字の宣言方法C言語で文字型変数を宣言する際は、char 型を使用します。文字定数はシングルクォーテーション( )で囲んで指定します。char a = A; /* 文字定数を使用した宣言 */このように宣言することで、変数 a に1文字分のデータを格納できます。文字入出力関数の種類C言語には、文字を入出力するための関数がいくつか用意されています。代表的なものは以下の3組です。scanf / printf: 書式指定