2014年10月28日火曜日

開発環境

Head First C ―頭とからだで覚えるCの基本(David Griffiths (著)、Dawn Griffiths (著) 中田 秀基(監訳)(翻訳)、木下 哲也 (翻訳)、オライリージャパン)の6章(データ構造と動的メモリ: 架け橋を築く)、自分で考えてみよう(p.289)を解いてみる。

その他参考書籍

自分で考えてみよう(p.289)

コード(BBEdit, Emacs)

sample289.c

#include <stdio.h>

#include "sample289.h"

void display(island *start)
{
  island *i = start;

  for (;i != NULL; i = i->next)
    printf("名前:%s 営業時間:%s-%s\n", i->name, i->opens, i->closes);
}

void release(island *start)
{
  island *i = start;
  island *next = NULL;

  for (; i != NULL; i = next) {
    next = i->next;
    free(i->name);
    free(i);
  }
}

int main(int argc, char *argv[])
{
  island *start = NULL;
  island *i = NULL;
  island *next = NULL;
  char name[80];
  
  for (; fgets(name, 80, stdin) != NULL; i = next) {
    next = create(name);
    if (start == NULL)
      start = next;
    if (i != NULL)
      i->next = next;
  }
  display(start);
  release(start);

  return (0);
}

Makefile

P=
CC=cc
CFLAGS=-g -Wall # -O3
SRC=
OBJ=
LDLIBS=

$(P): $(OBJ)
 $(CC) $(CFLAGS) $(LDLIBS) $(OBJ) -o $@

入出力結果(Terminal)

$ make sample289 && ./sample289
cc -g -Wall     sample289.c   -o sample289
アトランティス
ティッチマーシュ島
名前:アトランティス
 営業時間:09:00-17:00
名前:ティッチマーシュ島
 営業時間:09:00-17:00
$

0 コメント:

コメントを投稿