第7回 . 変数


今回は、変数について説明します。
変数は、プログラムを組むには避けて通れない物なので、使っていれば自然に扱えるようになるでしょう。


変数の基本

★1 . 変数とは?

数字などの値を入れる箱のような物です。
変数に入れた値に数字を足したり引いたりもできます。

簡単に説明するとRPGのステータスや所持金も変数を利用してると言えば分かりますか?
つまり、変数に所持金額の値を入れておいて、お金を使えば所持金を格納している変数から使った額を引けばいいのですね。


★2 . 変数の宣言

変数を使うには、まず宣言をします。

int  a,b,c; //文末にはセミコロンを忘れずに

int 」というのは変数を宣言するために必要な物です。
intの後にスペースを空けて、変数名を書きます。(2つ以上の変数を宣言する場合はカンマで区切って書いて下さい)

この場合は「a」「b」「c」という三つの変数を宣言したという事です。
これで三つの変数を扱う事ができます。


★3 . 代入

変数に値を入れる事を「代入」と呼びます。
代入するには「 
 」イコールを使います。

int  a,b,c; /*変数 a b c を宣言*/

a=5;    
/*aに5を代入*/
b=8;    
/*bに8を代入*/
c=a+b;  
/*c に a+b(すなわち13)を代入*/

イコールは、右辺の値を左辺の変数へ代入する役割を持っています。
上記のように、右辺には値の入った変数や計算式も記述できます。


★4 . 変数の初期化

変数を宣言したばかりの時は、変数には何も入ってないと思いますか?
変数は宣言した時点で「0」が入ってるわけではありません。
変数は、宣言と同時に値を代入する事もできます(これを変数の初期化と呼ぶ)

int  x=0,y=3,z; //宣言と同時に「xを0で初期化」「yに3を代入」

x=x+2;    
 //変数 x へ x+2 (0+2)を代入
y=x+y;     
//変数 y へ x+y (2+3)を代入
z=y+5;      /
/変数 z へ y+5 (5+5)を代入



★5 . 演算子

C言語には、数学の「加算」「減算」などの計算をするための演算子が用意されています。

記号 意味
「加算」  a+b は aにbを足す
「減算」 a-b は aからbを引く
/ 「除算」 a/b は aをbで割る
* 「乗算」 a*b は aにbを掛ける
% 「剰余算」 a%b は aをbで割った余りを求める
++ 「インクリメント」 変数に1を足す。 a++ は aに1を足す
-- 「デクリメント」 変数から1を引く。 a-- は aから1を引く
= 「イコール」 右辺の値や計算結果を左辺の変数へ代入



★6 . 変数を扱う上での決まり事

1)変数の名前は半角英数字を使用する。
2)名前の先頭を数字にしてはならない( 「3a」とか )
3)C言語で使われる単語と同じ名前を使用してはいけない(「if」 や 「for」 など)
4)変数に入れてる物が分かりやすい名前をつけるようにする(金額を格納するなら「money」とか)

なお、変数を宣言する時は関数の先頭で行って下さい。

void pceAppInit( void )
{
int a,b;/*変数の宣言は、関数内の先頭で行って下さい*/
int x,y,money; /*二行に分けて宣言する事もできます*/

pceLCDDispStop();
pceLCDSetBuffer( vbuff );
pceAppSetProcPeriod( 80 );
memset( vbuff, 0, 128*88 );


//ここに処理を記述

draw = 1;

pceLCDDispStart();
}

変数の利用

★1 . 引数として使う

変数に入ってる値は、引数としても使えます。

void pceAppInit( void )
{
int x,y; /*変数xとyを宣言*/

pceLCDDispStop();
pceLCDSetBuffer( vbuff );
pceAppSetProcPeriod( 80 );
memset( vbuff, 0, 128*88 );


x=30; /*xに30を代入*/
y=67;
/*yに67を代入*/

pceFontSetPos( x , y );
/*文字表示座標をx,y(30,67)に変更*/
pceFontPrintf("兄さん、頭が痛いよ…");
/*文字列を出力*/


draw = 1;

pceLCDDispStart();
}



★2 . 変数の値を表示する

pceFontPrintfは変数に代入された値を画面に出力する事もできます。

pceFontPrintf("変数に入ってる値は%dだ",a);

文章の中で、変数の値を出したい所に「%d」と書きます。
その場所に表示したい変数を「"」の後にカンマで区切って書きます。

二つ以上表示する事も可能です。

pceFontPrintf("一つ目は%d 二つ目は%d 三つ目は%d",a,b,c);



変数部分には、計算式も記述できます。

void pceAppInit( void )
{

int a,b; /*変数aとbを宣言*/

pceLCDDispStop();
pceLCDSetBuffer( vbuff );
pceAppSetProcPeriod( 80 );
memset( vbuff, 0, 128*88 );


a=5; /*aに5を代入*/
b=10; /*bに10を代入*/

pceFontSetPos(0,0);
/*文字表示座標を(0,0)に変更*/

/*文字列を出力*/

pceFontPrintf("aには%d bには%d  aとbを足した値は%dです",a,b,a+b);


draw = 1;

pceLCDDispStart();

}

■実行結果



戻る