ファイルまわり

変数宣言した時に*str="hogehoge"とするのは便利だけど、宣言する時だけしかできないのかな。。

  • 以下、EOFの時はfgets()がNULLなのでwhile文が実行されず、「Complete」の部分は出力されません
  • 追記:strcpyとmallocを使えば良いと気づきました。
#include <stdio.h>
int main(void){
  char str[512];
  FILE *fp;
  fp = fopen("test.txt", "r");
  while(fgets(str, 1024, fp)){
    if(fputs(str, stdout) == EOF){
      printf("Complete\n");
    } else {
      printf("TEST\n");
    }
  }
  return 0;
}