第3講 変数を理解しよう
第5話 変数の加工
その2
実は、データの加工で大事なのは今話の話題の方です。
今話は、コンピュータにいろいろな演算をさせていくときの基礎となる重要な話です。
そして、
   a="太郎は賢い";
の=と変数は、数学の=と変数とは違うということが理解できると思います。
関数や変数といっても、数学の関数や変数とは違うので、ほんの少しも苦手意識をもつ必要はないのです。

さて、前回のコードを次のように変更したときの実行画面が予想できるでしょうか。
入門
include<iostream>
#include<string>
using namespace std;
using namespace System;
void f1();
void main(){
   f1();
}
void f1(){
   string a;
   a="太郎は";
   cout<<a<<endl;
   a=a+"賢い";
   cout<<a<<endl;
}

「えっ?おかしくない」と思いになりませんでしたか。
   a=a+"賢い";
=や変数が数学と同じでしたら、こんなことはあり得ませんね。
右辺のaを左辺に移項して計算したら、
  0="賢い";
となってしまうわけですから。
プログラミングにおける=の意味とは何なんでしょうか。
その意味は後で説明することにして、先に実行画面を見てみましょう。
30行下です。





















コンソール画面
C
なんと、前話の実行画面と全く同じです。
つまり、
include<iostream>
#include<string>
using namespace std;
using namespace System;
void f1();
void main(){
   f1();
}
void f1(){
   string a;
   a="太郎は";
   cout<<a<<endl;
   a=a+"賢い";
   cout<<a<<endl;
}

#include<iostream>
#include<string>
using namespace std;
using namespace System;
void f1();
void main(){
   f1();
}
void f1(){
   string a;
   a="太郎は";
   cout<<a<<endl;
   a="太郎は賢い";
   cout<<a<<endl;
}
は、全く同じプログラムです。
どうしてでしょうか。
実は、=とは決して数学の=ではありません。
   a="太郎は";
は、aというラベルの貼ってある箱に、"太郎は";を入れなさいです。
C言語
入門

ですから、
  a="太郎は";
は、実際には
  a←"太郎は";
のようにイメージした方がよいのです。

さて、では
   a=a+"賢い";
はなんでしょうか。

実は、これは
   a="太郎は"+"賢い";
と同じです。つまり、
   a=a+"賢い";
は、aの箱から『太郎は』を取り出しそれに『賢い』を加えなさい、改めてaの箱に入れなさいの命令なのです。
C言語
   a=a+"賢い";
は、実際には
   a←a+"賢い";
をイメージした方がよいのです。

さて、今話が理解できれば次話以降で扱う数の代入や演算の話題もすんなり理解できるはずです。




第4話へ 第6話へ


戻る


VB講義へ
VB講義基礎へ

vc++講義へ第1部へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座
初心者のための世界で一番わかりやすいVBA入門講義(基礎から応用まで)