博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
语言的对于处理器的字长问题
阅读量:6270 次
发布时间:2019-06-22

本文共 344 字,大约阅读时间需要 1 分钟。

hot3.png

unsigned int zero = 0;

unsigned int compzero = 0xFFFF; 
对于一个int型不是16位的处理器为说,上面的代码是不正确的。应编写如下:
signed int compzero = ~0; 

为什么会这样,我百度了下,有人这样回答,我觉得不错,所以,特别记录下来。

这与多少位的处理器无关,是编译器决定的。当int为32位二进制数时,0xFFFF才占了一半的位数,显然不是最大值0xFFFFFFFF;但~0却就是0xFFFFFFFF,所以signed int compzero = ~0;这个写法就很保险,无论int是多少位的都能使之得到最大值

转载于:https://my.oschina.net/u/920274/blog/1837971

你可能感兴趣的文章
通过浏览器查看nginx服务器状态配置方法
查看>>
shell简介
查看>>
android 使用WebView 支持播放优酷视频,土豆视频
查看>>
怎么用secureCRT连接Linux
查看>>
C# 使用WinRar命令压缩和解压缩
查看>>
linux学习笔记一----------文件相关操作
查看>>
Mono for Android 优势与劣势
查看>>
服务器端开发技术
查看>>
Python3中urllib详细使用方法(header,代理,超时,认证,异常处理)
查看>>
ajax提交多个对象,使用序列化表单和FormData
查看>>
深入分析由前序和中序重构二叉树问题
查看>>
leetcode 题解 || Valid Parentheses 问题
查看>>
将图片转成base64字符串并在JSP页面显示的Java代码
查看>>
什么是WeakHashMap--转
查看>>
js 面试题
查看>>
第二十二节,三元运算
查看>>
Yacc 与 Lex 快速入门
查看>>
Unity中HDR外发光的使用
查看>>
Flume负载均衡配置
查看>>
Ajax详解
查看>>