開発環境
- OS: macOS High Sierra - Apple
- Text Editor: Emacs
- コンパイラー: LLVM/Clang, GCC(gcc)
- プログラミング言語: C
Head First C ―頭とからだで覚えるCの基本 (David Griffiths (著)、Dawn Griffiths (著)、中田 秀基 (監修)、木下 哲也 (翻訳)、オライリージャパン)の2.5章(文字列 - 文字列理論)、コンパイラになってみよう(p. 91)を取り組んでみる。
コンパイラになってみよう(p. 91)
Makefile
cc = cc all: sample run sample: sample.c cc sample.c -o sample run: sample ./sample
コード
#include <stdbool.h> #include <stdio.h> #include <string.h> char tracks[][80] = {"I left my heart 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++) { char *track = tracks[i]; if (strstr(track, search_for)) { printf("曲番号%i: '%s'\n", i + 1, track); } } } int main() { /* 左下 */ char search_for[80]; while (true) { printf("検索語: "); fgets(search_for, 80, stdin); if (search_for[0] == 'q') { break; } search_for[strlen(search_for) - 1] = '\0'; find_track(search_for); } }
入出力結果(Terminal)
$ make cc sample.c -o sample ./sample 検索語: er 曲番号2: 'Newark, Newark - a wonderful town' 曲番号4: 'From here to maternity' 検索語: a 曲番号1: 'I left my heart in Harvard Med School' 曲番号2: 'Newark, Newark - a wonderful town' 曲番号3: 'Dancing with a Dork' 曲番号4: 'From here to maternity' 曲番号5: 'The girl from Iwo Jima' 検索語: the 検索語: The 曲番号5: 'The girl from Iwo Jima' 検索語: in 曲番号1: 'I left my heart in Harvard Med School' 曲番号3: 'Dancing with a Dork' 検索語: q $
0 コメント:
コメントを投稿