如何使用fwrite()编写一个int

时间:2015-11-06 07:35:23

标签: c file-io

假设我有int largeInt = 9999999char buffer[100],如何将largeInt转换为字符串(我尝试buffer = largeInt,不起作用)然后{{ 1}}到文件流fwrite()

现在如果我想写“大数字是(myFile的值),该怎么办?”到largeInt

2 个答案:

答案 0 :(得分:2)

您可以使用here所述的非标准itoa()功能,并将数字转换为字符串,然后使用sscanf格式化您的句子。

  

itoa():使用指定的基数将整数值转换为以null结尾的字符串,并将结果存储在str参数给出的数组中。

然后使用fwrite将句子写入您的文件。

答案 1 :(得分:1)

一个例子:

int largeInt = 9999999;
FILE* f = fopen("wy.txt", "w");
fprintf(f, "%d", largeInt);

请参阅此链接:http://www.cplusplus.com/reference/cstdio/fprintf/

如果您想使用fwrite

char str[100];
memset(str, '\0', 100);
int largeInt = 9999999;
sprintf(str,"%d",largeInt);

FILE* f = fopen("wy.txt", "wb");
fwrite(str, sizeof(char), strlen(str), f);