
84.C言語の型の話
ナックス「はい。今回はユーザーにどの手を出すかの選択肢を表示します」
デビー君「はーい」
ナックス「前回作成したソースコードを以下のように書き換えてください」
#include <stdio.h> void main() { printf("あなたご飯にする?\n"); printf("お風呂にする?\n"); printf("それとも、タ・ワ・シ?\n"); printf("\n"); printf("1: ご飯"); printf("2: お風呂"); printf("3: タワシ"); }
ナックス「どう?ここまでのコードは理解できそう?」
デビー君「なんかprintf("\n");っていうのがあるけど、これは改行だけしてるの?」
ナックス「そうです。改行だけしてるんです」
デビー君「なるほど。printf("1: お風呂");っていうのは、表示される時は普通に『1: お風呂』みたいに表示されるんだよね?」
ナックス「そうです。その通りです」
デビー君「なるほど。じゃあ、多分だいじょうぶ」
ナックス「よし。多分、これをコンパイルして実行すると、以下のように表示されるのですが」
あなたご飯にする? お風呂にする? それとも、タ・ワ・シ? 1: ご飯 2: お風呂 3: タワシ
ナックス「私のイメージだと、この後ユーザーに1か2か3を入力してもらって、どの手を出すか決めてほしいイメージです」
デビー君「なるほど」
ナックス「そして、ユーザーが入力した値は変数に入れるのですが、C言語の変数の話をするとなると、ついに型の話をしなければなるまい」
デビー君「かた?」
ナックス「型型」
デビー君「かたかた?」
ナックス「型型型型型」
デビー君「かたかたかたかたかた?」
ナックス「……さて、C言語の変数ですが」
デビー君「えっ!?さっきの何!?」
ナックス「C言語で変数を使用するときには『この変数はこういう型の値を入れて使いますよ』と宣言してから使わないといけません。例えば、文字型や整数型、ブーリアン型などがあります」
デビー君「なにそれ怖い」
ナックス「例えば『数字型の変数としてaという名前の変数を使うよ』っていうふうにコードを書いたやつに、文字を入れると……」
デビー君「入れると?」
ナックス「コンパイル時に、エラーになります」
デビー君「なにそれ怖い」
ナックス「というわけで、実際にどんな感じに型を宣言して値を代入するのか、変数aに対して型を宣言しながら値を代入する例を以下に記述してみます」
- 文字型
- char a = 'i';
- 整数型
- int a = 20;
- 小数点型
- double a = 0.7;
- ブーリアン型
- bool a = true;
ナックス「正直言うと、上記以外にも型の種類はあります。上記4つは中でも基本的な型ですね」
デビー君「数字を扱うのも整数なのか小数点を使うかで、型を変えないといけないの?」
ナックス「いけないんです」
デビー君「面倒くさい……」
ナックス「ごめんね。頑張って」
ナックス「ところで、変数に値を入れることを代入(だいにゅう)っていうんだけど、私ちゃんと『代入って言うんだよ』って教えてたっけ?」
デビー君「教えていない気もする」
ナックス「じゃあ今覚えて!変数に値を入れることを代入といいます!なんでそう言うかって?知らないよ!」
ナックス「というわけで次回!85.C言語の型の話続き!」