How to C
新元号が発表されたと言うのでなんか書こうかと思ったが、つまらないのでしばらくソフトの入門的な話を書こうと思います。
いまさらアッセンブラ関係を書くには忘れてしまったし、C++などは基本よくわからないので、Cの話にします。
私は時々 Visal Basic もやるので、けっこう C と Basicでよく書き方を混同して間違えます。そもそもプログラム言語というのは作った人の都合があるので、普通の算数の文法からして、間違えやすいのですね。まずは今回は
普通の算数で
1+1 を計算するには
1+1 = 2
と計算します。
でも プログラムでは
まず入れ物を用意します。
A とします
これに まず 1を入れます。
算数では プログラムでは
1 A =1
これを代入式といいます。
ちっと変なのが、右のものを左に入れることです。
1 = A
とは 書けません。
この場合 1を定数(決まった値)
Aを変数といいます。
次に 1を足します。
算数では プログラムでは
1 +1 A =A+1
プログラムのほうはなんか変ですね
右辺と左辺が違うのに = があるなんておかしいです。
この = は代入ですのでわかりやすく書くと
新A ← 旧A + 1
ということです。
同じ A なのに時間関係が違うのです。
算数(電卓など)では
1+1 =(もしくはエンターキー) と書くと
2 と表示されますが、
プログラムではどう使うかわからないので
A
のままです。
たとえば
Print( A )
という
Aを印刷(表示)せよ
という操作をすると
Print( A )
2
と表示されて分かるわけです。
表示させないとわからないのが困ったもので
ここで、よく間違いは起こります。
ここまで説明した通り
=
は、プログラムでは代入すること
右辺の内容を左辺にコピーです。
A という入れ物に B を入れるならば
A = B
でオッケーです。
A= 1
A= 1
A= 1
A= 1
A= 1
と何回実行しても
A は1のままですが
A=1
のあとに
A= A+1
A= A+1
A= A+1
A= A+1
A= A+1
とやると
A= 1 // Aは 1
A= A+1 // Aは 2
A= A+1 // Aは 3
A= A+1 // Aは 4
A= A+1 // Aは 5
A= A+1 // Aは 6
となって、新しいAになって中身が増えていくのです。
足し算もちょっとわかって来たかと思います。
しかしながら C では困った記号があるのですね
==
というイコールが2つ続いたやつです。
これは、比較演算子といって全然違う記号です。
よく間違うんですよ
VisualBasic ではこれがなくて
=
が、== と同じ意味なのです。
詳しくは次回
| 固定リンク
「ソフト」カテゴリの記事
- BLACK FRIDAY セールの話(2023.11.20)
- PIC18FQ MCC で I2C(2023.10.25)
- 「mbed のボードに書き込む」はなし(2019.10.10)
- How To C [ else]のはなし(2019.04.18)
- How To C if() のはなし(2019.04.09)
コメント