C言語

~はじめてのC言語~ データの扱い

C言語におけるデータの扱いについて

C言語では「定数」や「変数」といったデータを扱います。
簡単に言うと、「定数」とは値が変わらないものをいい、「変数」は任意の値を入れることが可能なものを言います。

定数はそのままなのでわかるのですが、
「変数」がちょっとよくわからないです・・。

そうですよね。普段は使わない言葉なので聞きなれないというのも一つの要因かと思います。「定数」も含めて詳しく見ていきましょう!

定数とは?

定数とは先ほど説明した通りこの値は変わらないことを意味しています。
例えば、「12」や「24」といった数値があるとします。
この"12"や"24"が定数です。

この値はずっと"12"と"24”ですよね?

このように変わらない値のことを「定数」といいます。

変数とは?

変数とは、値が変わる可能性があるもののことを言います。
C言語では、計算をするときに"変数"と呼ばれる数値や文字を入れる「入れ物」を用意します。
実際にコードを見ていきましょう。

int main ()
{
    int a = 10;
    int b = 20;
    int c = a + b;
}

説明すると、"a"という入れ物に数値の"10"を代入して、同じように"b"という入れ物に数値の"20"を代入します。
そして"c"という入れ物に先ほど代入した"a"と"b"を使い足し算の答えを代入しています。
結果"c"の入れ物には"30"という値が入ることになります。
また、

int main ()
{
    int a = 10;
    int b = 20;
    int c = a + b;

    a = b + c;
}

のようにすると、先ほどまで"10"が入っていた"a"には"b"と"c"を足した、"50"が入ることになります。

このように、"a"の入れ物には"10"が入ったり、"50"が入ったりして値が変わっていますよね?これが変数です。

なるほど。何度も何度もいろんな値を入れられるってことですね!

そういうことです!

ですが、値を入れなおすと前の値は消えて更新されてしまうので注意してくださいね♪

変数の基本 ( 型について )

先ほどからサンプルコードの変数に付いている"int"ってなんですか?

それは変数の「型」と呼ばれるもので、その変数にどんな値が入るのかによって使い分けなくてはならないものなんです。

型指定データ型バイト幅扱える数値の範囲
char文字型1-128 ~ 127
int整数型2-32768 ~ 32767

long

倍長整数型4-2147483648 ~ 2147483647
float単精度浮動小数点型43.4E-38 ~ 3.4E+38
double倍精度浮動小数点型81.7E-308 ~ 1.7E+308

バイト幅扱える数値の範囲については各処理系によって異なりますので注意してください。

一覧にするとこんな感じです。
他にも型の種類はあるのですが、基本的なものだけ押さえておきましょう。
「バイト幅」については、今後詳しく説明しますので、今はそこまで気にせずに進みましょう。

このように、"int"は整数の値を入れる変数ですよ。という意味になります。

入れるものによって変えるんですね!

頑張って覚えます。

最初は見たことない文字ばかりで覚えにくいかもしれないですが、型についてはやっていくとすぐに覚えるので、安心してください♪

変数の基本 ( ルールについて )

次は変数のルールについて説明します。
実は変数の名前は自分で自由に付けることができるんです!

"a"とか"b"じゃなくていいんですね。
わかりにくいと思っていたんです!

はい。好きな名前を付けてわかりやすく!

ですが、名前の付け方にもルールがあるので見ていきましょう。

変数名を付ける際に気を付ける主なルールは、

  • 先頭の文字は英字( a~z、A~Z )または下線( _ )にする必要があります。
  • 2文字目以降は英字、下線、数字にする必要があります。
  • 大文字と小文字を区別する必要があります。
  • 先頭から最低31文字までが有効です。
  • 予約語( C言語の文法上で使われる語 )と同じ綴り( do、for など )は使用できませんが、識別名の一部に入るものに関しては問題ありません( dot、form など )。

以上に注意して変数に名前を付けてください。
また、何でもいいとは言ったものの、その変数が何の役割をするのか名前でわかるようにするのがいいですよ♪

わかりました。

気を付けてわかりやすく見やすいコードを書きます!

変数の基本 ( 初期化について )

C言語では、変数の宣言時には必ず初期化をする必要があります。
※ 変数の宣言とは、その変数を一番最初に使うときに記述することを言います。

初期化とは、変数の宣言時に値を代入することです。
実際にコードを見ていきましょう。

int main ()
{
    /* これは初期化をしていない悪い例 */
    int a;
    /* これが正しく初期化できている正しい例 */
    int b = 0;
}

なぜ必要かというと、この上の悪い例のままだと"a"という変数には不定値(ゴミ)が入っており使い物になりません。
なので下の正しい例のように値を代入して不定値(ゴミ)を取り除く初期化が必要なのです。

まとめ

今回はC言語の基本となるデータの種類や扱い方について解説しました。


意外と間違えやすい変数の認識や初期化する理由など、間違った認識のまま進むといつか大変な目に合うので気を付けて基本からマスターしていきましょう!

データの型の種類や2進数や8進数、16進数などについてはまた次回記事にしたいと思いますので、そちらも参考にしていってください。

~はじめてのC言語~ データの型一覧

[temp id=2]

Copyright© FUNA BLOG , 2020 All Rights Reserved.