prev up next   top/contents search

comp.lang.c FAQ 列表· 问题 13.1

我如何将数字转换为字符串(与atoi相反)?有没有itoa函数?


只需使用sprintf:

	sprintf(string, "%d", number);
(不必担心sprintf可能有点大材小用,会浪费运行时间或代码空间;但实际上它效果很好。)另请参阅问题 7.5a 的答案中的示例,以及问题 8.612.21

显然,您也可以使用sprintf将长整型或浮点数转换为字符串(使用%ld%f);换句话说,sprintf也可以视为与atolatof相反。此外,您还可以相当精细地控制格式。(正是因为这些原因,C 才提供了sprintf作为通用解决方案,而不是itoa.)

如果您实在必须编写一个itoa函数,以下是一些需要考虑的事项

另请参阅问题 12.2120.10

参考文献:K&R1 第 3.6 节 第 60 页
K&R2 第 3.6 节 第 64 页


prev up next   contents search
关于此 FAQ 列表   关于 Eskimo   搜索   反馈   版权

Eskimo North 托管