#1
by shika » 7年前
環境は、win7 の winxp で、gccコンパイラです。
コード:
/*
* c_9_2_1.c
*/
#include <stdio.h>
#include <stdlib.h> /* exit() */
int main (void)
{
char str[80] = "これは、ファイルシステムのテストです。\n";
FILE *fp;
char *p, ch;
int i;
/* 書き込み用にをmyfileを開く */
if ((fp = fopen("myfile", "w")) == NULL)
{
puts("ファイルオープンエラーです。");
exit(1);
}
/* ディスクにstrを書き込む */
p = str;
while(ch = *p)
{
if (fputs(ch, fp) == EOF)
{
puts("ファイル書き込みエラー");
exit(1);
}
p++;
}
fclose(fp);
/* 読み込み用にをmyfileを開く */
if ((fp = fopen("myfile", "r")) == NULL)
{
puts("ファイルオープンエラーです。");
exit(1);
}
/* ファイルを読み込み直す */
for(;;)
{
if ((i = fgetc(fp)) == EOF)
break;
putchar(i);
}
fclose(fp);
return 0;
}
大変基本的で初歩的な質問ですみませんが、
上記Cソースコードをコンパイルすると、fput() の所でエラーと成ります。
エラー原因がよく分かりません。
何処が間違っているのか、どなたか詳しい方、ご教授願います。
環境は、win7 の winxp で、gccコンパイラです。
[code]
/*
* c_9_2_1.c
*/
#include <stdio.h>
#include <stdlib.h> /* exit() */
int main (void)
{
char str[80] = "これは、ファイルシステムのテストです。\n";
FILE *fp;
char *p, ch;
int i;
/* 書き込み用にをmyfileを開く */
if ((fp = fopen("myfile", "w")) == NULL)
{
puts("ファイルオープンエラーです。");
exit(1);
}
/* ディスクにstrを書き込む */
p = str;
while(ch = *p)
{
if (fputs(ch, fp) == EOF)
{
puts("ファイル書き込みエラー");
exit(1);
}
p++;
}
fclose(fp);
/* 読み込み用にをmyfileを開く */
if ((fp = fopen("myfile", "r")) == NULL)
{
puts("ファイルオープンエラーです。");
exit(1);
}
/* ファイルを読み込み直す */
for(;;)
{
if ((i = fgetc(fp)) == EOF)
break;
putchar(i);
}
fclose(fp);
return 0;
}
[/code]
大変基本的で初歩的な質問ですみませんが、
上記Cソースコードをコンパイルすると、fput() の所でエラーと成ります。
エラー原因がよく分かりません。
何処が間違っているのか、どなたか詳しい方、ご教授願います。