c - 是否可以在同一个函数中使用两种不同类型的二进制文件进行写入?

标签 c binary fwrite

您好,我必须编写一个程序,其中涉及在二进制文件中写入矩阵,但它必须在每个写入的数字之间有一个空格。此外,第一个 fwrite 必须具有行和列的大小。所以不要做类似的事情:

fwrite( &n, sizeof( int ), 1, fw ); 
fwrite( &space, sizeof( char ), 1, fw ); 
fwrite( &m, sizeof( int ), 1, fw );

space = ' ';
fwrite( &temp, sizeof( int ), 1, fw );
fwrite( &sapce, sizeof( char ), 1, fw );

我想看看这样的事情是否可能。

fwrite( "&n &m", 2*sizeof( int ) + sizeof( char ), 1, fw );

fwrite( "&n ", sizeof( int ) + sizeof( char ), 1, fw );

最佳答案

也许你可以尝试这个:

    char a[256];
    sprintf(a, "%d %d", n, m);
    fwrite( a, strlen(a), 1, fw );

关于c - 是否可以在同一个函数中使用两种不同类型的二进制文件进行写入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26876984/

相关文章:

C 结构说明

将int转换为带小数的字符串

c - fwrite() - 大小和计数对性能的影响

c - fwrite 在最后一次迭代中不起作用

在同一个 system() 调用中连接两个命令

algorithm - 所有零一序列,其中彼此不相邻

c# - python: c# 二进制日期时间编码

javascript - PHP 将二进制转换为文本并返回

c - fread 错误 - 段错误

c - 如何使用C语言的linux restart功能来关闭Linux(Ubuntu)系统?