将1~255所对应的ASCII码以十进制,十六进制,字符型数据输出到终端,格式为51行5栏

将1~255所对应的ASCII码以十进制,十六进制,字符型数据输出到终端,格式为51行5栏

以下是C++代码示例,可以将1~255所对应的ASCII码以十进制、十六进制和字符型数据输出到终端,格式为51行5栏。

#include <iostream>
#include <iomanip> //用于控制输出格式

using namespace std;

int main()
{
    int count = 0; //用于计数,每5个一行
    for (int i = 1; i <= 255; i++) {
        cout << setw(3) << dec << i << ", "; //输出十进制形式
        cout << setw(2) << hex << i << ", "; //输出十六进制形式,注意需要设置宽度为2,才能保证对齐
        if (isprint(i)) { //如果是可见字符,则按正常字符输出
            cout << setw(2) << char(i) << " ";
        } else { //否则输出不可见字符的提示信息
            cout << "np ";
        }
        count++;
        if (count == 5) { //每5个一行
            cout << endl;
            count = 0;
        }
    }
    return 0;
}

具体解释可以参考这篇文章:https://blog.csdn.net/weixin_43576565/article/details/131083572?csdn_share_tail=%7B%22type%22%3A%22blog%22%2C%22rType%22%3A%22article%22%2C%22rId%22%3A%22131083572%22%2C%22source%22%3A%22weixin_43576565%22%7D


#include<iostream>
#include<cstdio>
using namespace std;
int main()
{
    int count = 0; // 计数器
    for(int i = 1; i <= 255; ++i) 
    {
        printf("%3d %02x %c ", i, i, char(i)); // 十进制,十六进制,字符型数据输出
        count++; // 计数器加一
        if(count % 5 == 0) cout << endl; // 控制格式,每行输出五个
    }
    return 0;
}