2018年9月22日土曜日

開発環境

  • OS: macOS High Sierra - Apple
  • Text Editor: Emacs
  • コンパイラー: LLVM/Clang, GCC(gcc)
  • プログラミング言語: C

Head First C ―頭とからだで覚えるCの基本 (David Griffiths (著)、Dawn Griffiths (著)、中田 秀基 (監修)、木下 哲也 (翻訳)、オライリージャパン)の5章(構造体、共用体、ビットフィールド - 独自の構造を使う)、金庫破り(p. 243)を取り組んでみる。

金庫破り(p. 243)

Makefile

cc = cc

all: sample run

sample: sample.c
 cc sample.c -o sample

run: sample
 ./sample

コード

#include <stdio.h>

typedef struct {
  const char *description;
  float value;
} Swag;

typedef struct {
  Swag *swag;
  const char *sequence;
} Combination;

typedef struct {
  Combination numbers;
  const char *make;
} Safe;

int main() {
  Swag gold = {"GOLD!", 1000000.0};
  Combination numbers = {&gold, "6502"};
  Safe s = {numbers, "RAMACON250"};

  puts(s.numbers.swag->description);
}

入出力結果(Terminal)

$ gmake
cc sample.c -o sample
./sample
GOLD!
$

0 コメント:

コメントを投稿