在 C 编程练习中,我被要求在不使用 C 库的情况下将 int 转换为 char。
知道如何去做吗?
编辑:我所说的 int 是内置的 C/C++ 类型
Thanks.
Cast it?
char c = (char)i;
或者也许你是这个意思?
char c = (char)('0' + i);
我确信这不是你的意思...我猜你想创建一个字符串(字符数组)?如果是这样,那么您需要从最低有效数字开始一次转换一位数字。您可以用伪代码递归地执行此操作:
function convertToString(i)
if i < 10
return convertDigitToChar(i)
else
return convertDigitToString(i / 10) concat convertDigitToChar(i % 10)
Here /
是整数除法并且%
是整数模。您还需要处理负数。这可以通过首先检查是否有负数,调用绝对值的函数并在必要时添加减号来完成。
在 C 中,为了提高性能,您可能会使用循环而不是使用递归来实现此目的,并通过直接修改字符数组的内容而不是连接字符串来实现。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)