当前位置:网站首页>C陷阱与缺陷 第7章 可移植性缺陷 7.4 字符是有符号数还是无符号数
C陷阱与缺陷 第7章 可移植性缺陷 7.4 字符是有符号数还是无符号数
2022-07-30 17:10:00 【weixin_客子光阴】
字符是有符号整数还是无符号整数
只有在我们需要把一个字符值转换为一个较大的整数时,这个问题才变得重要起来而在其他情况下,结果都是已定义的:多余的位将被简单地“丢弃”。编译器在转换char类型到int类型时,需要作出选择:应该将字符作为有符号类型处理,还是应该将字符作为无符号数处理?
有符号整数还是无符号整数影响到程序员对哈希表或转换表等的设计方式。
常见的错误认识是:如果c是一个字符常量,使用(unsigned)c就可得到与c等价的无符号整数。这是会失败的,因为将字符c转换为无符号整数时,c将首先被转换为int型整数,而此时可能得到非期望的结果。
正确的方式是使用语句(unsigned char)c,因为一个unsigned char类型的字符在转换为无符号整数是无须首先转换为int型整数,而是直接进行转换。
边栏推荐
猜你喜欢

Error occurred while trying to proxy request项目突然起不来了
![[极客大挑战 2020]Roamphp1-Welcome](/img/3b/2fa91f7478b8abf6efe0feafd24e58.png)
[极客大挑战 2020]Roamphp1-Welcome

Mysql进阶优化篇01——四万字详解数据库性能分析工具(深入、全面、详细,收藏备用)

How does the new retail saas applet explore the way to break the digital store?

torch.optim.Adam() 函数用法

Discuz杂志/新闻报道模板(jeavi_line)UTF8-GBK模板

Navisworks切换语言

You are a first-class loser, you become a first-class winner

olap——入门ClickHouse

云厂商做生态需要“真连接、真赋能”,用“技术+真金实银”发展伙伴
随机推荐
牛客网刷题——运算符问题
强烈推荐APP破解常用工具集合!
基于模糊PID的液压舵机伺服系统
.NET 6.0中使用Identity框架实现JWT身份认证与授权
简易的命令行入门教程
Navisworks切换语言
向量检索基础方法总结
Discuz杂志/新闻报道模板(jeavi_line)UTF8-GBK模板
C语言向MySQL插入数据
Express framework connects MySQL and ORM framework
第5章 SQL高级处理
说几个大厂分库分表的那点破事。
数据库的三大范式
(18)[系统调用]追踪系统调用(服务表)
bean的生命周期
Security business revenue growth rate exceeds 70% 360 builds digital security leader
论文阅读之《Color Constancy Using CNNs》
Chapter 5 Advanced SQL Processing
Weka 3.8.6安装与Weka 3.8.6功能介绍
FP6606ACAW4 TQFN-20L (3mmx3mm) USB双端口充电控制器 百盛电子代理