如何使用uint8_t并初始化变量
#include<iostream>
using namespace std;
int main()
{
uint8_t a = 6;
cout << a;
return 1;
}
正在打印一些符号
答案 0 :(得分:3)
C ++将uint8_t
视为char
- 因为它几乎就是它。
如果您将char
传递给cout
,它将打印为char
,其值为6,即ACK符号(可能会显示)奇怪的是,取决于你的终端设置)。
如果您希望将其打印为数字,则将其投放到unsigned
中的cout
应该可以解决问题:
cout << (unsigned)a;
答案 1 :(得分:0)
您可以投射变量 a ,以便将其打印为数字而不是ascii符号
#include<iostream>
#include <cstdint>
int main()
{
uint8_t a = 6;
std::cout << "a: " << a << std::endl;
std::cout << "a casted to char(is the same type actually): " << char(a) << std::endl;
std::cout << "a casted to int: " << int(a) << std::endl;
getchar();
return 0;
}
答案 2 :(得分:-1)
您可以使用旧的类型不安全printf
。
#include <cstdint>
#include <cstdio>
int main()
{
std::uint8_t a = 6;
std::printf("%d\n", a);
}