如何将文件中的字符放入char字符串?

时间:2012-12-17 15:05:49

标签: c readfile file-copying

所以这是我的尝试,但是我遇到了一些我不知道如何解决的错误。 17.2警告:传递putc的参数2使得指针来自整数而没有强制转换。 C:\ mingw .......注意预期的结构文件*但是'但是参数的类型是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);
}

2 个答案:

答案 0 :(得分:0)

putc 的第二个参数是文件流。但是你传递了一个简单的特征。使用:

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

在stdout中打印。

答案 1 :(得分:0)

此:

putc(c, copywords);

错了。首先,copywords永远不会在此行之上初始化或使用,因此引用它显然是错误的。其次,putc()的原型是:

int putc(int c, FILE *stream);

解释了编译器警告。