0

これが私の試みですが、修正方法がわからないエラーがいくつか発生しています。17.2警告:putcの引数2を渡すと、キャストなしで整数からポインターが作成されます。C:\mingw.......予想されるStructFILE*に注意してください。ただし、引数はint型です。

  #include <stdio.h>
  #include <stdlib.h>

  int main (void) {
FILE *fp;
int c;
char copywords;

fp = fopen("gues20.txt", "r");
if (fp == NULL)
exit(1);

c = getc(fp);
while(c != EOF)
{
putc(c, copywords);
c = getc(fp);
}
printf("%d", copywords);
}
4

2 に答える 2

0

putcの2番目の引数はファイルストリームです。しかし、あなたは普通の文字を渡します。使用する:

while(c != EOF)
{
putc(c, stdout);
c = getc(fp);
}

stdoutで印刷します。

于 2012-12-17T15:08:14.293 に答える
0

これ:

putc(c, copywords);

間違っている。まず、copywordsこの行より上で初期化または使用されることはないため、参照するのは明らかに間違っています。次に、のプロトタイプは次のputc()とおりです。

int putc(int c, FILE *stream);

これはコンパイラの警告を説明しています。

于 2012-12-17T15:08:45.150 に答える