開発環境
- OS X Mavericks - Apple(OS)
- Emacs (CUI)、BBEdit - Bare Bones Software, Inc. (GUI) (Text Editor)
- C (プログラミング言語)
- Clang (コンパイラ)
独習C 第4版(ハーバート・シルト (著)、 柏原 正三 (監修)トップスタジオ (翻訳) 、翔泳社)の第2章(制御文 - その1)、2.7(関係演算子と論理演算子)、2.7(練習問題), 3.を解いてみる。
その他参考書籍
- プログラミング言語C 第2版 ANSI規格準拠 (B.W. カーニハン D.M. リッチー (著)、 石田 晴久 (翻訳)、共立出版)
- プログラミング言語Cアンサー・ブック 第2版 (クロビス・L.トンド、スコット・E.ギンペル(著)、矢吹 道郎(翻訳))
- C実践プログラミング 第3版 (Steve Oualline (著)、 望月 康司 (監訳) (翻訳)、谷口 功 (翻訳))
- Head First C ―頭とからだで覚えるCの基本(David Griffiths (著)、Dawn Griffiths (著) 中田 秀基(監訳)(翻訳)、木下 哲也 (翻訳)、オライリージャパン)
2.7(練習問題), 3.
sample.c
#include <stdio.h> int main(int argc, char *argv[]) { /* 2つの式の評価結果は異なる。 */ /* aは真 */ printf("a: "); if (0 && 1 || 1) { printf("真\n"); } else { printf("偽\n"); } /* aの式は(0 && 1) || 1と同じ */ if ((0 && 1) || 1) { printf("真\n"); } else { printf("偽\n"); } /* bは偽 */ printf("b: "); if (0 && (1 || 1)) { printf("真\n"); } else { printf("偽\n"); } return (0); }
入出力結果(Terminal)
$ cc -g -o sample sample.c && ./sample sample.c:8:11: warning: '&&' within '||' [-Wlogical-op-parentheses] if (0 && 1 || 1) { ~~^~~~ ~~ sample.c:8:11: note: place parentheses around the '&&' expression to silence this warning if (0 && 1 || 1) { ^ ( ) 1 warning generated. a: 真 真 b: 偽 $
0 コメント:
コメントを投稿