我正在尝试将一个 int 添加到一个 char 数组。我的(损坏的)代码如下,
string[i] = (char) number;
i
是数组的某个整数索引,number
是某个整数。实际上,在输入此内容时,我注意到如果数字超过一位数,则会出现另一个问题,因此,如果您对这个问题也有一些答案,那就太好了!
最佳答案
如果 number == 0
,修改后的要求是将数字 '0'
放入 string[i]
中,同样对于值number
介于1
和9
之间,则需要在数字后面加上'0'
:
assert(number >= 0 && number <= 9);
string[i] = number + '0';
逆变换用于将数字字符转换回对应的数字:
assert(isdigit(c));
int value = c - '0';
关于在 C 中将 int 转换为 char?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21196926/