0x3f3f3f3f 0xbfbfbfbf 等的原理及应用
原理
0x的意思其实是十六进制,后面加的数其实就是一个十六进制数。
在十六进制中,我们知道a代表10,b代表11,c代表12,d代表13,e代表14,f代表15。
所以3f3f3f3f这个数用十进制数表示其实就是1061109567,是int中的一个比较大的数。而且在程序中,经常要相加,而这个数*2还是没有超过int的范围,是一个很实用的数。
而0xbfbfbfbf则是一个很小的负数(其实是太大了,超出了int的范围就变成了负数)。
应用
- 初始化一个数字,例如:int a = 0x3f3f3f3f;
- 定义一个常量,例如:const int minn = 0xbfbfbfbf;
- 应用到memset中,注意只写一个3f或bf即可。关于memset
还是比较难理解的。。。
作者:尹昱钦
欢迎任何形式的转载,但请务必注明出处。
限于本人水平,如果文章和代码有表述不当之处,还请不吝赐教。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现