C++/CLIをつつく6ー算術演算。コンピューターは計算がお好き。
#include "stdafx.h"
using namespace System;
int main(array ^args)
{
Byte num = 10;
Console::WriteLine( "{0} + {1} = {2}", num, 15, num + 15 );
Console::WriteLine( "{0} - {1} = {2}", num, 5, num - 15 );
Console::WriteLine( "{0} * {1} = {2}", num, 2, num * 2 );
Console::WriteLine( "{0} / {1} = {2}", num, 2, num / 2 );
Console::WriteLine( "{0} - {1} = {2} 余りは{3}",
num, 3, num / 3, num % 3 );
return 0;
}
どう?思ったよりも普通でしょう。 じゃあ、サクッと次行ってみようー。今度はちょっと変わっている、インクリメント(増加)演算子だ。
#include "stdafx.h"
using namespace System;
int main(array ^args)
{
Byte num = 10;
Console::WriteLine( "始めの数字は{0}", num);
Console::WriteLine( "{0} あれ?数値が変わっていないぞ。", num++ );
Console::WriteLine( "{0} やっと変わった。", num );
Console::WriteLine( "{0} 今度は直ぐに変化したぞ", ++num );
return 0;
}
今度はちょっと変だよね。++の位置で加算されるタイミングが変わるんだ。 慣れるまでちょっと難しいから普段は++変数(前置インクリメント)の方を使おう。 ここで、インクリメントという事は逆があるのかな?と思った人は鋭い! 実はあるんだ。
#include "stdafx.h"
using namespace System;
int main(array ^args)
{
Byte num = 10;
Console::WriteLine( "始めの数字は{0}", num);
Console::WriteLine( "{0} あれ?数値が変わっていないぞ。", num-- );
Console::WriteLine( "{0} やっと変わった。", num );
Console::WriteLine( "{0} 今度は直ぐに変化したぞ", --num );
return 0;
}
この【--】記号をデクリメント演算子と呼ぶんだ。 何で変数=変数+1にしないんだ?と疑問に思う人は多いだろうけど、その方が実行が早くなる確率が高いんだ。 え?それは何でかって。それは、インクリメントとデクリメントはループとかに多く使われているんで特別に用意されているんだ。 少しでも早くしようというハード設計者の親切心みたいだね。やっぱり速い方がいいからうれしいよね。 今回の記事はこれでおしまい。次は論理演算子をやるよ。