2018年8月16日木曜日

開発環境

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

Head First C ―頭とからだで覚えるCの基本 (David Griffiths (著)、Dawn Griffiths (著)、中田 秀基 (監修)、木下 哲也 (翻訳)、オライリージャパン)の2.5章(文字列 - 文字列理論)、プールパズル(p. 90)を取り組んでみる。

プールパズル(p. 90)

Makefile

cc = cc

all: sample run

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

run: sample
 ./sample

コード

#include <stdio.h>
#include <string.h>

char tracks[][80] = {"I left my hear in Harvard Med School",
                     "Newark, Newark - a wonderful town", "Dancing with a Dork",
                     "From here to maternity", "The girl from Iwo Jima"};

void find_track(char search_for[]) {
  for (int i = 0; i < 5; i++) {
    if (strstr(tracks[i], search_for)) {
      printf("曲番号%i: '%s'\n", i, tracks[i]);
    }
  }
}
int main() {
  char searchs[][80] = {"my", "in"};

  for (int i = 0; i < 2; i++) {
    puts(searchs[i]);
    find_track(searchs[i]);
  }
}

入出力結果(Terminal)

$ make
cc sample.c -o sample
./sample
my
曲番号0: 'I left my hear in Harvard Med School'
in
曲番号0: 'I left my hear in Harvard Med School'
曲番号2: 'Dancing with a Dork'
$

0 コメント:

コメントを投稿