为什么fwrite不适用于C中的二进制文件?

若昂七

我想使用C语言将一些数据写入二进制文件。显然,函数fwrite似乎无法正常工作。这是代码:

typedef struct tw {
    char name[40];
    char tweet[150];
    int rt, like;
} Twitter;

void createFile() {
    FILE *bin;
    Twitter user;
    if (bin = fopen("test.bin", "wb") == NULL) {
        printf("Error");
        return 0;
    }
    strcpy(user.name, "name");
    strcpy(user.tweet, "this is a tweet");
    user.rt=5;
    user.like=10;

    fwrite(&user, sizeof(Twitter), 1, bin);

    fclose(bin);

}

fwrite函数不会向文件中写入任何内容,并且我一直在寻找代码中的错误,但找不到任何错误。另外,当我尝试使用该功能写入txt文件时,它可以正常工作。

我们

你需要改变

if (bin = fopen("test.bin", "wb") == NULL)

 if ((bin = fopen("test.bin", "wb")) == NULL)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么file命令说ELF二进制文件适用于Linux 2.6.9?

在预编译阶段编译的二进制文件不适用于临时容器

梯度检查适用于二进制文件,但不适用于多类

适用于 Windows 的 KWStyle 二进制文件?

整数解析不适用于将二进制转换为十进制

节点快递发送功能不适用于二进制数据

二进制搜索不适用于特定输出

二进制搜索适用于整数数组,但不适用于双精度数组

为什么“二进制文件”不在原始二进制文件中?

在C#中计算二进制文件的符号频率不起作用,但适用于等效的C ++代码

如何从__TEXT切入到适用于mach-o二进制文件的新段中?

适用于Solaris 10的OpenSSL二进制文件

Travis CI没有找到适用于2.1.0的二进制文件

python中是否有适用于数组的二进制或运算符?

Setuid二进制文件通过覆盖%n来生成根外壳,不适用于漏洞利用,但在不需要漏洞利用时起作用

为什么二进制文件的内容未在c中打印?

二进制基数排序不适用于更大数量的无符号字符

将二进制数据转换为 base64 不适用于 btoa unescape

我的基本二进制搜索方法不适用于Java int数组中的一个特定值

C 中的 fwrite 在文件末尾添加额外的二进制字符

c .... fwrite中的二进制文件更新无法成功写入整个结构

%p格式为8位十六进制数字(适用于64位二进制文件)

C中的二进制文件

适用于Python3存储库的Bitbake食谱,提供CLI作为二进制文件

如何在带有curl的管道中使用gzip或gunzip(适用于二进制gz文件)

Bitbucket-您的平台上没有适用于Chrome浏览器的二进制文件

cat为什么更改二进制文件的内容?

为什么忽略二进制文件是最佳做法?

为什么git索引文件是二进制的?