下記のプログラムを実行するとセグメンテーションフォルトとなります。
何故セグメンテーションフォルトとなるか教えて下さい。
C
1#include <stdio.h> 2#include <stdlib.h> 3int main(int argc, char *argv[]){ 4 #define f1 "data1.txt" 5 #define f2 "data2.txt" 6 #define f3 "data3.txt" 7 8 FILE *f, *g, *k; 9 f= fopen(f1,"r"); 10 if( f==NULL ){ 11 printf("data1.txt"": can't open."); 12 } 13 g= fopen(f2,"r"); 14 if( g==NULL ){ 15 printf("data2.txt"": can't open."); 16 } 17 k= fopen(f3,"r"); 18 if( k==NULL ){ 19 printf("data3.txt"": can't open."); 20 } 21 fclose(f); 22 fclose(g); 23 fclose(k); 24 25 return 0; 26}