#include <stdlib.h>
#include <stdio.h>
int main() {
char ch, file_name[25];
FILE *fp;
printf("Enter the name of file you wish to see\n");
gets(file_name);
fp = fopen(file_name,"r"); // is for read mode
if (fp == NULL) {
printf(stderr, "There was an Error while opening the file.\n");
return (-1);
}
printf("The contents of %s file are :\n", file_name);
while ((ch = fgetc(fp)) != EOF)
printf("%c",ch);
fclose(fp);
return 0;
}
このコードは機能しているように見えますが、「警告: このプログラムは gets() を使用していますが、これは安全ではありません」という警告が表示され続けます。
そのため、 fgets() を使用しようとしましたが、「関数呼び出しに必要な引数が少なすぎます 3」というエラーが表示されます。
これを回避する方法はありますか?