インクリメント演算子a++はaの格納している値に1を足したものをaに代入する,デクリメント演算子a--はaが今格納している値から1を引いたものをaに代入するという機能があります。

アレサ 「さらに、さらに新しい単項演算子


インクリメント演算子


についてみていきましょう。」


ソーラー 「やったね。 アレサ 


今日はどんなプログラムの機能がわかるか楽しみだね」


アレサ 「そうですね。では!


次のプログラムをご覧ください。


#include <stdio.h>


int main (void)

{

int a;

a=10;

a++;


printf("aの値は%dです\n",a);


return 0;

}


ソーラー 「このa++はなんだろ?  すごくコンピュータっぽい


記号でかっこいいな(^^)」


アレサ 「かっこいいです。ほんとにプログラムっぽくなって


きました。


コンパイル結果は


aの値は11です


となります。


このようにa++は


今変数aが格納している値にさらに1を加えたものを


変数aに代入するという働きがあります。」


ソーラー「あれ?


変数aが今、格納している値にさらに1を加えたものを


変数aに代入するという働きって


加算代入演算子+=のところでもにたようなことをやったよね。


a+=1;


が実行されると


変数aが今、格納している値にさらに1を加えたものを


変数aに代入することができるからね。


ということは


a+=1;

a=a+1;

が実行されることに等しかったように


a++;

a=a+1;

が実行されることに等しいんだね。」


アレサ「そうなんですの。


この++はインクリメント演算子とよばれ


これからプログラムを組んでいく中で たくさん登場してきます。」


ソーラー 「たくさんでてくるんだ~


a++はaに1を足す機能がねえ~」


アレサ

「はい、次にインクリメント演算子の兄弟である


デクリメント演算子をみていきましょう。」



#include <stdio.h>


int main (void)

{

int a;

a=10;

a--;


printf("aの値は%dです\n",a);


return 0;

}



アレサ「


コンパイル結果は


aの値は9です


となります。


このa--の--はデクリメント演算子とよばれ


変数aが今、格納している値から1を引いたものを変数aに


格納するという機能があります。」


ソーラー「変数aが今、格納している値から1を引いたものを変数aに


格納するという働きって・・・


減算代入演算子-=のところでもにたようなことをやったよね。


a-=1;


が実行されると


変数aが今、格納している値から1がひいかれたものが


変数aに代入されるからね。


ということは


a-=1;

a=a-1;

が実行されることに等しかったように


a--;

a=a-1;


が実行されることに等しいんだね。」



アレサ「そうなんですの



このプログラムの場合


a--;


のはたらきにより


変数aには


aの変数宣言後 初期化された


最初の値10から


1がひかれた9が格納されています。」


ソーラー 「aから1をひく機能か~


それにしても


a++;もa--;も


突然 a++; ばーんって


プログラム内にでてくるんだね」


アレサ 「はいっそうですね。(´▽`)


そして


a++;

a--;


もセミコロンがついていて


命令文になっていますね。


a++;(インクリメント演算子)


a--;(デクリメント演算子)


これらはプログラムを作製する際とっても大事な機能をもつ


演算子なんです。」












  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます