C言語 入門

ここはArduboyでゲーム開発を行う準備をするページです。
C言語の最も基礎だけを手短に説明します。

出力と入力

コンピュータ機器の基本となる動作は、画面などへ情報を出力すること、そしてキーボードなどからデータを入力することです
printf("%d", a); 変数aの値を10進法で出力
scanf("%d", &a); キーボードから数値を入力し変数aに代入
※Arduboyには文字列や変数の値を出力するprint()という命令が用意されています。
 方向ボタンとA、Bボタンの入力はArduboyライブラリに備わった命令で受け取ります。

変数

数値や文字列を扱うために、メモリ上に用意する入れ物(データを入れる箱)が変数です
int a = 0; 整数を扱うaという変数を用意し、0を代入
double b = 0.1; 小数を扱うbという変数を用意し、0.1を代入
変数は、どういった種類の値を扱うかを、整数ならint、小数ならdoubleで指定します。それらをデータ型あるいは型といいます。 小数を扱うfloatという型もありますが、floatで扱う数はdoubleより精度が低くなります。 他に1byteの文字(数値では-128~127)を扱うcharという型があります。
※Arduboyのメモリは小さいので、charやunsigned char(0~255)で事足りるなら、intでなく1byteの型を使うとよいでしょう。

条件分岐

何らかの条件が成り立った時に処理を分岐させることが条件分岐です
●if文
・if(条件式) { 処理 } 条件が成立したら{}内に記述した処理を行う
・if(条件式) { 処理1 } else { 処理2 } 条件が成立したら処理1、成立しないなら処理2を行う
・if(条件式1) { 処理1 }
 else if(条件式2){ 処理2 }
 else if(条件式3){ 処理3 }
  :
 条件が成立するかを順に調べ、成立するならその{}内の処理を行う

●switch case 文 変数の値によって処理を分岐させる
switch(変数) {
 case 値1: 処理1; break;
 case 値2: 処理2; break;
 case 値3: 処理3; break;
  :
 default: 処理n;
}

繰り返し

コンピュータに反復して処理を行わせることが繰り返しです
●for文
 例)
 for(int i=0; i<10; i++) { 処理 }
 変数iは0から始まり、1ずつ増えながらiの値が9になるまで繰り返す
 for(変数宣言と初期値の代入; 終値の条件; 変数の増減)と記述する

whileとdo whileは()に記した条件が成り立つ間、処理を繰り返す
●while文
 例)
 int i=0;
 while(i<10) { 処理 }

●do while文
 例)
 int i=0;
 do { 処理 } while(i<10);

関数

コンピュータが行う処理を一つのまとまりとして記述したものが関数です
 例1)
 void hello() { printf("Hello!"); } Hello!という文字列を出力する
 voidは値が空であるという意味の型で、戻り値(次の例2)の無い関数の宣言で使う

 例2)
 int add(int a, int b) { return a+b; } 引数のaとbを足した値を戻り値として返す
 int c = add(10, 20); 変数cに30が代入される

配列

複数のデータをまとめて管理するために用いる、番号の付いた変数が配列です
 例1)一次元配列
 int data[3] = { 10, 20, 40 };
 この記述ではdata[0]に10、data[1]に20、data[2]に40が代入される

 例2)二次元配列
 int data[2][3] = {
  { 1, 2, 4},
  {10, 20, 40}
 };
 data[行][列]という配列を用意する
 この記述ではdata[0][0]が1、data[1][2]が40になる

Arduboyでゲーム開発のページへ移動
プログラミング、ゲーム開発の書籍を執筆します
メールはこちらへ: