Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C语言中的文件读取从文件的中间开始_C_File - Fatal编程技术网

C语言中的文件读取从文件的中间开始

C语言中的文件读取从文件的中间开始,c,file,C,File,我试图读入一个文件并将其全部打印出来,但出于某种原因,它几乎从文件的中间开始这样做,我尝试了几种不同的读取方法,但没有一种能像预期的那样工作。这是代码。先谢谢你 void readFile(FILE *file) { FILE * fd = fopen((const char *) file, "r"); if (fd == NULL) { printf("Error"); } char line[500

我试图读入一个文件并将其全部打印出来,但出于某种原因,它几乎从文件的中间开始这样做,我尝试了几种不同的读取方法,但没有一种能像预期的那样工作。这是代码。先谢谢你

void readFile(FILE *file) {
    FILE * fd = fopen((const char *) file, "r");

    if (fd == NULL) {
        printf("Error");
    }

    char line[500];

    while (!feof(fd)) {
        fgets(line, 500, fd);
        printf("%s",line);
    } 

    fclose(fd);
}

int main() {

    readFile((FILE *) "ulysses.txt");
    return 0;
}

这没有意义:
(文件*)“ulysses.txt”
参数是常量字符*并且函数应该接受常量字符*请将
while(!feof(fd)){fgets(line,500,fd);
替换为
while(fgets(line,500,fd)!=NULL){
etc并查看文件名是一个字符串,它应该传递给
char*
string参数。
void readFile(char*file)
。强制转换正在隐藏错误。