1 名前:デフォルトの名無しさん [2016/01/31(日) 14:56:35.43 ID:9arms57E.net] 質問する前にGoogleで検索しましょう。ttp://www.google.co.jp プログラム・ソフトの使い方は PC 初心者板やソフトウェア板へ。 ウイルス、ハッキング・クラッキングを求めるような発言は禁止です。 Javascript は Web 制作板、CGI は Web プログラミング板へ。 業界談義、愚痴はプログラマ板へどうぞ。 ゲーム関係の話題はゲーム製作板へどうぞ。 ネタ、板とは関係の無い話題はご遠慮ください。 スレ立てるまでもない質問はここで 141匹目 peace.2ch.net/test/read.cgi/tech/1442427461/ 擦れたテルマエもない質問はここで 142匹目 peace.2ch.net/test/read.cgi/tech/1453818221/ スレ立てるまでモアイ質問はここで 142匹目 peace.2ch.net/test/read.cgi/tech/1454083375/
51 名前:デフォルトの名無しさん [2016/02/09(火) 14:55:03.98 ID:hcReR7Xf.net] C初心者です int a = 0; int b = 0; a == b && a++ || a++; この時aが2になってしまい、短絡評価にて条件が真の時に論理和の処理も実行されてしまいます どうしてこうなってしまうのでしょうか?
52 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 16:22:58.72 ID:QPpqBQlp.net] >>51 a == b && a++ || a++; ( a == b && a++ ) || a++; 上の式は下の式のようにすると分かりやすいと思うけど 論理積の結果が偽なのでaが2になる clangだと-Wlogical-op-parentheses ( デフォルト )により この分かりにくい式のwarningを出してくれる
53 名前:デフォルトの名無しさん mailto:sage [2016/02/09(火) 17:07:31.00 ID:hcReR7Xf.net] >>52 理解できました!ありがとうございました!