C言語メモ。
C言語、基本的なところにはまりまくり。
int a,b; a=1; b=a++; // b←a の後に a++
int a,b; a=1; b=++a; // a++ の後に b←a
なぜにこういう仕様なのだろうか……「独習C」の書き方も「仕掛けが理解できた後でないと、記述の意味が理解できない」記述になっているあたりが微妙。
int a,b; int xor(int a,int b); int xor(int a,int b){ int c; c = (a || b) && !(a && b); // or と nand の and を取る。 return c; }
うーん……「独習C」に責任はないのだけれど……できれば、p.57の「and/or/not」とp.59の「xor」のみではなくて、「nand/nor」についても表で掲示するほうがいいと思いました。
……いや、「独習C」では、説明の順番がそもそも変なのかも。
論理演算では「not→and/or→nand/nor→xor」の順番で説明しないと、混乱する可能性がありますので(というか、電子回路本ではこの順序で説明する例が多いような?)。