コンパイラの不思議(不思議じゃないかも)
2023.11.21
Arduino IDEで今までに気づいた事、こんな変な記述をしてもビルドでエラー無し、正常に完了するという物を紹介します。



1番目
コメントにした行が本来の正しい書き方
その次の行、意図は分からないでもないが文法的にはNG。
でも、通ってしまう。(動作はしないと思うけれど)

2番目
Z80のアセンブラとC言語を行ったり来たりしていると、やらかします。
C言語なのにコメントをうっかりセミコロンにしてしまう。(言うまでもないが、アセンブラのコメントはセミコロン)
でも、通ってしまう。セミコロンだけなら、いくつあっても。
(while文は無関係です)
C言語では末尾にセミコロンを書く決まりです。この場合、たぶん・・・命令文なしとみなされて、スルーされるので実害は無いのでしょう。

3番目
もはや意味不明です。これでも通ってしまう。
printfの後を消し忘れたのかもしれません。
昔、現場で苦労していた時に3日間ぐらいこの変な記述に気づかなかった事も。
これがコンパイル結果にどのように作用するのかは不明。

- CafeLog -