如何在c ++中将整数值转换为特定的ascii字符

时间:2010-07-28 21:45:54

标签: c++ ascii int

我是C ++的新手,我正在尝试做一些非常基本的事情。

我在C ++中有一个小循环,只显示一系列数字,我想将这些数字转换为特定的ASCII字符。像这样:

    for (int k = 0; k < 16; k++) {
        display(65+k);
    }

结果应如下所示:

ABCDEFGH ...等

有什么想法吗?

谢谢!

3 个答案:

答案 0 :(得分:2)

编辑基于澄清: 从错误消息判断display采用C风格的字符串。你可以像这样构建一个:

for (int k = 0; k < 16; k++) {
    char str[2] = { 65 + k };  // Implicitly add the terminating null.
    display(str);
}

答案 1 :(得分:0)

那将是

#include <iostream>  
int main() {  
for (int k = 0; k < 16; k++) {
        std::cout.put(65+k);
    }
}

for C ++

答案 2 :(得分:0)

这是将整数转换为ascii字符的简单方法:

int number = 65;
char convertedAscii = static_cast<char>(number);
cout << convertedAscii;

您可以这样使用它:

char convertedAscii;
for (int k = 0; k < 16; k++) {
    convertedAscii = static_cast<char>(65+k);
    cout << convertedAscii;
}
cout << endl;

不过,我认为它只能在unicode拉丁字母结尾的某个地方使用。基本上,例如,如果您要打印出第170个ascii字符,则它将循环返回并为您提供第85个字符。我希望这能回答您的问题。