Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/68.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_Save_File Not Found - Fatal编程技术网

用c语言保存到文件中

用c语言保存到文件中,c,file,save,file-not-found,C,File,Save,File Not Found,此函数的作用域是获取输入并保存到文件中。简单对吧?但是我在控制台输入后找不到该文件。请帮帮我 void addpassenger() { int size = sizeof(struct passenger); struct passenger newPassenger; printf("Name: "); gets(newPassenger.name); printf("Surname: "); gets(newPassenger.surna

此函数的作用域是获取输入并保存到文件中。简单对吧?但是我在控制台输入后找不到该文件。请帮帮我

void addpassenger()
{
    int size = sizeof(struct passenger);
    struct passenger newPassenger;

    printf("Name: ");
    gets(newPassenger.name);

    printf("Surname: ");
    gets(newPassenger.surname);

    printf("ID card No: ");
    gets(newPassenger.idCard);

    printf("Nationality: ");
    gets(newPassenger.Nationality);

    printf("Telephone/Mobile: ");
    scanf("%d",&newPassenger.phone);

    FILE *pt =fopen("passenger.dat","a");
    fwrite(&newPassenger,size,1,pt);
    fclose(pt);

}

fwrite-您传递的第二个和第三个参数是错误的

第二个参数是size—要写入的每个元素的大小(以字节为单位)。 size_t是无符号整数类型

第三个参数是count—元素数,每个元素的大小为字节。 size_t是无符号整数类型

所以你的论点应该是正确的

fwrite(&newPassenger,sizeof(int),size,pt);

通常,工作目录不在可执行文件所在的位置。最好是显式地设置它,或者只查看它所在的位置。因为您只提供文件名(而不是完整路径),所以文件将位于可执行文件的末尾。通常,这是您运行它的起点。