首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >uint8显示奇怪的字符

uint8显示奇怪的字符
EN

Stack Overflow用户
提问于 2010-09-04 18:23:43
回答 2查看 6.2K关注 0票数 6

我声明了一个uint8变量,当打印出其中的值时,我会得到笑脸和空格。它不应该显示整数值吗?

EN

回答 2

Stack Overflow用户

发布于 2010-09-04 18:37:16

我敢打赌,在您的系统头文件中,uint8unsigned chartypedef。然后,std::cout << u将打印符号而不是整数值,其中u的类型为uint8。试一试

代码语言:javascript
运行
复制
std::cout << static_cast< int >( u );

代码语言:javascript
运行
复制
std::cout << +u;

将数值打印出来。

票数 13
EN

Stack Overflow用户

发布于 2010-09-04 19:01:35

这完全取决于您如何打印值。对于cout,可以尝试使用cout << (long unsigned int)var;;对于printf,可以尝试使用%lu格式说明符。但是,就像前面提到的usta一样,uint8很可能被定义或定义为其他类型,因为它不是一个ISO C++类型。也有可能是将uint8类型定义为unsigned long int (通用)或unsigned __int64 (特定于MS平台),而MSVC++编译器只是执行了错误的隐式转换。如果不知道uint8的定义是什么,就很难判断。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3641845

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档