gpt4 book ai didi

c - 将字符串写入 .mc 文件

转载 作者:行者123 更新时间:2023-11-30 20:41:04 25 4
gpt4 key购买 nike

我正在尝试将数据写入文件,但它没有出现,但我知道程序正在完成。我建立一个可写文件,从命令参数中获取名称

  FILE *outFilePtr;

然后我通过以下方式创建文件:

outFilePtr=fopen(outFileString,"w"); //outFileString is the name of the file from command

现在我尝试打印到这个扩展名为 .mc 的文件:

fprintf(outFilePtr,"%s\n","1001") //example string

文件被创建,但没有写入任何内容。这可能是一个愚蠢的问题,但是您不能将字符串写入机器代码文件吗?如果是这种情况,我正在尝试找到解决此问题的方法。

最佳答案

您应该检查 fopen 和 fprintf 的结果。这对我有用:

#include <stdio.h>
#include <errno.h>

int
main(int argc, char *argv[])
{
FILE *outFilePtr;

outFilePtr = fopen("asdf.mc", "w");
if(!outFilePtr) {
perror("Couldn't open it");
fprintf(stderr, "errno: %d\n", errno);
exit(-1);
}
if(fprintf(outFilePtr, "%s\n", "1001") < 0)
{
fclose(outFilePtr);
perror("Couldn't write to it");
fprintf(stderr, "errno: %d\n", errno);
exit(-1);
}
fclose(outFilePtr);
}

如果打开文件时出现问题(权限等),perror 将显示它。例如,使用空字符串作为文件名在 window$ 机器中给了我这个:

Couldn't open it: Invalid argument
errno: 22

如果我在 fprintf 之前关闭 outFilePtr,则会显示此错误:

Couldn't write to it: Bad file descriptor
errno: 9

关于c - 将字符串写入 .mc 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18924880/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com