これまでこの授業では, 扱うデータとしてはほとんど整数型(int)だけに 限ってきた. そもそも型とはメモリの内容(単なる0と1のならび)の解釈の方法を定めるものである. 同じ「01000001」というビット列でも, これを整数とみれば 65 という値になるし, 文字とみれば A という文字となる. こうした解釈はコンピュータ自身では定めることができないので, そのかわりにプログラムの中で個々の変数に型を指定することで, その変数のもつビット列の解釈を定めるのである.

C 言語では, 基本的な型としては, 整数型, 浮動小数点型, 文字型の3種類があり, あらかじめ言語に組み込まれている. (さらに, 次回の授業で取り上げるポインタ型も基本型のひとつである)

ここで, それぞれの基本型について, 入力と出力の方法をまとめておく. []の中は教科書のページ.

型の説明 入力 出力(printfでの指定)
整数 p.49 gets と atoi [p.65] %d [p.31]
浮動小数点数 p.56 gets と atof [---] %f [p.58], %g [p.234]
文字 p.50 %c [---]
文字配列(基本型ではない) p.61 gets [p.61] %s [p.65]

浮動小数点数を入力して出力するコードの例: (atof を利用するには, 先頭に「#include <stdlib.h>」が必要)

#include <stdio.h> #include <stdlib.h> int main(void){ char buffer[256]; float x; gets(buffer); x = atof(buffer); printf("%f\n", x); }

つぎに, こうした基本型を組み合わせてつくる型がある. これまでに出てきたのは配列で, たとえば「int 型の値を 10個保持する配列」などを作ることができた. 配列の特徴は, その要素の型がすべて同じということで, 「最初の要素は int, 二番目の要素は fload」などということは許されない. 浮動小数点数の配列の例:

float xs[100];

基本型を組み合わせてつくる型のもうひとつが, 今回とりあげる構造体である. 詳細については次節で説明する.


[page 2] prev index next