在我当前的程序中,我需要将整数格式化为ASCII字符。这将适用于sprint()或snprintf()。
是否有替代sprintf()或snprintf()来格式化数据?
谢谢, 帕。
答案 0 :(得分:2)
char ch = (char)(i + (int)'0'); /* Where i is an integer */
这适用于0到9
答案 1 :(得分:1)
您可以使用任何*printf()
功能,例如printf, s(n)printf, fprintf
等。*print**f**
表示“格式化打印”。您也可以尝试printf("%c",(char)65)
,但这可能对您没有多大帮助。
在大多数情况下,内置函数比“自写”更快。
答案 2 :(得分:1)
原始问题并未明确输入是包含十进制形式的整数的字符串,但阅读注释会导致比sprintf重量轻得多的解决方案
(char)(atoi(decimal_str))
转换为char
可确保整数将限制为8位,代码值相同。 atoi
将一串数字转换为整数