C - Cを始める - Cの世界に飛び込む - コンパイラー
Head First C ―頭とからだで覚えるCの基本、 David Griffiths(著)、 Dawn Griffiths(著)、 中田 秀基(監修)、 木下 哲也(翻訳)、 O’Reilly Media)の 1章(Cを始める - Cの世界に飛び込む)、p.23(コンパイラになってみよう)の解答を求めてみる。
Makefile
all: a.out
./a.out
a.out: main.c
cc main.c
コード
main.c
#include <stdio.h>
int main()
{
// 小さいカード
int card_a = 1;
if (card_a > 1)
card_a--;
if (card_a < 7)
puts("a: 小さいカード");
else
puts("a: エース");
// 出力なし
int card_b = 1;
if (card_b > 1)
{
card_b--;
if (card_b < 7)
puts("b: 小さいカード");
else
puts("b: エース");
}
// エース
int card_c = 1;
if (card_c > 1)
{
card_c--;
if (card_c < 7)
puts("c: 小さいカード");
}
else
puts("c: エース");
// Dはコンパイルエラーになる
}
入出力結果(Terminal, Zsh)
% make
cc main.c
./a.out
a: 小さいカード
c: エース
%