C ++,Integer和Char数组转换的麻烦

时间:2013-07-03 04:28:37

标签: c++ arrays int

我有char数组:

char* chararray = new char[33];

int

int exponent = 11111111;

我想做什么,但我对如何将exponent的值输入chararray感到困惑。 exponent必须采用chararray的第2到第9个值的限制。 chararray将全部为32 0,我希望它变为0xxxxxxxx0000 .... 00,x是exponent中的8位数。

此外,没有像atof或atoi那样的内置转换功能。我也想避免使用浮动或双打而不是你真正需要的。

注意,这是为了让IEEE754 32位值得到一些理解。

如果需要,将编辑其他详细信息或澄清。

1 个答案:

答案 0 :(得分:2)

使用'0'初始化数组后尝试此操作:

for(int i=9; i>=2; i--) {
        chararray[i] = (exponent%10) + '0';
        exponent = exponent/10;
    }
chararray[32] = '\0';