こんにちは,エラーのある世界(0)のhello.cについて,1行目の「<stdio.h>」を,「(stdio.h)」に変更して,hello6.cという名前で保存しておきます.
このファイルをコンパイルすると,エラーになります.
コマンドは(実行環境1・2共通):
$ cat hello6.c #include (stdio.h) int main(void) { printf("hello, world\n"); return 0; } $ cc hello6.c hello6.c:1:10: error: #include expects "FILENAME" or <FILENAME> #include (stdio.h) ^ hello6.c: In function ‘main’: hello6.c:5:3: warning: implicit declaration of function ‘printf’ [-Wimplicit-function-declaration] printf("hello, world\n"); ^~~~~~ hello6.c:5:3: warning: incompatible implicit declaration of built-in function ‘printf’ hello6.c:5:3: note: include ‘<stdio.h>’ or provide a declaration of ‘printf’
実行環境1では:
実行環境2では:
これも,エラーです.実行ファイルは作られません.実行ファイル(a.out)があるとしても,それは以前のコンパイルが成功したときに作られたファイルです.
「hello6.c:1:10: error: #include expects "FILENAME" or
「hello6.c:5:3: warning: implicit declaration of function ‘printf’」のメッセージは,こんにちは,エラーのある世界(3)のコンパイル時のメッセージに少し似ています.実はhello6.cのコンパイルにおいて,1行目でエラーが発生したけれども,それでもコンパイルを進めているのです.最後の「note:」の直後,「include ‘
「#include