如何将int(整数)转换为字符串?我想做一个函数,将struct的数据转换成字符串,保存到文件中.

推荐答案

EDIT:正如 comments 中指出的,itoa()不是标准,所以最好使用竞争答案中建议的sprintf()方法!


您可以使用itoa()函数将整数值convert转换为字符串.

下面是一个例子:

int num = 321;
char snum[5];

// convert 123 to string [buf]
itoa(num, snum, 10);

// print our string
printf("%s\n", snum);

如果要将 struct 输出到文件中,则无需事先转换任何值.您可以使用printf format specification来指示如何输出值,并使用printf family中的任何运算符来输出数据.

C++相关问答推荐

FFmpeg不检测比特流过滤器参数

如何在C中的空指针函数中传递浮点值

C指针地址和转换

malloc实现:判断正确的分配对齐

在32位处理器上优化53—32位模计算>

如果实际的syscall是CLONE(),那么为什么strace接受fork()呢?

如何将已分配的数组(运行时已知的大小)放入 struct 中?

Rust FFI--如何用给出返回引用的迭代器包装C风格的迭代器?

在C++中通过空指针隐式访问常量变量的值

是否可以使用指针算法在不对齐的情况下在 struct 中相同类型的字段的连续序列之间移动?

GTK3按钮信号错误

Vcpkg的配置文件

为什么此共享库没有预期的依赖项?

预处理器宏扩展(ISO/IEC 9899:1999(E)§;6.10.3.5示例3)

使用%f格式说明符打印整数值

如何在不使用字符串的情况下在c中编写函数atof().h>;

如何将两个uint32_t值交织成一个uint64_t?

在吉陀罗中,_2_1_和CONCAT11是什么意思?

';malloc():损坏的顶部大小';分配超过20万整数后

Ubuntu编译:C中的文件格式无法识别错误