社区
C语言
帖子详情
0xFFFF用简洁的方式替代
yjh404537424
2010-10-23 04:21:16
在非16位机上,用什么替代 unsigned int a = 0xFFFF ???
谢谢大牛的 回答……
...全文
338
18
打赏
收藏
0xFFFF用简洁的方式替代
在非16位机上,用什么替代 unsigned int a = 0xFFFF ??? 谢谢大牛的 回答……
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
18 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
tingting5278910
2012-05-11
打赏
举报
回复
[Quote=引用 3 楼 的回复:]
#include<limits.h>
unsigned int a=UINT_MAX;
[/Quote]
是什么意思?
zhutianjin4355255
2010-10-25
打赏
举报
回复
[Quote=引用楼主 yjh404537424 的回复:]
在非16位机上,用什么替代 unsigned int a = 0xFFFF ???
谢谢大牛的 回答……
[/Quote]
a = ~0
purewqk
2010-10-25
打赏
举报
回复
那就直接~0...
鼠
2010-10-24
打赏
举报
回复
不知所云……
楼主到底要拿 0xFFFF 来干什么?
是要一个固定的 16 位的全 1,还是要根据系统数据类型的长度选择不同长度的全 1?
yjh404537424
2010-10-24
打赏
举报
回复
[Quote=引用 9 楼 songwanqiang 的回复:]
C99中有个<stdint.h>头文件,其中定义了挺多种类型的整型。
在支持C99编译器上可以使用uint16_t类型。
#include <stdint.h>
uint16_t b = ~0;
unsigned int a = b;
这样的话不同宽度类型会有自动隐式扩展,当然在编译器可信的前提下。
[/Quote]谢谢 不过我的linux里 没又man道这个头文件阿?
yjh404537424
2010-10-24
打赏
举报
回复
[Quote=引用 5 楼 samueltian 的回复:]
unsigned int a= ~0
[/Quote]我写的也是 这个。这个可以方便移植嘛??谢谢
yjh404537424
2010-10-24
打赏
举报
回复
[Quote=引用 8 楼 athenacle_ 的回复:]
引用 7 楼 samueltian 的回复:
引用 6 楼 athenacle_ 的回复:
引用 5 楼 samueltian 的回复:
unsigned int a= ~0
如果用了32位的机器,~0不是成了unsigned int a = 0xffffffff ?
我不太明白你的意思,在非十六位的系统里面的unsigned int 有可能不是16位是32位啊。你……
[/Quote]
就是对那种 可以方便移植的 不要固定的,我写的是
unsigned int a= ~0 不知道对不对?????非16位机 机器位数不固定。。
songwanqiang
2010-10-24
打赏
举报
回复
[Quote=引用 12 楼 yjh404537424 的回复:]
引用 9 楼 songwanqiang 的回复:
C99中有个<stdint.h>头文件,其中定义了挺多种类型的整型。
在支持C99编译器上可以使用uint16_t类型。
#include <stdint.h>
uint16_t b = ~0;
unsigned int a = b;
这样的话不同宽度类型会有自动隐式扩展,当然在编译器可信的前提下。
谢谢 不过我的linux里 没……
[/Quote]
有的,我现在用的还是GCC3.4.5,这版本就有。最新版本的应该更会有的。
<stdint.h>就在include目录里面。
ForestDB
2010-10-24
打赏
举报
回复
unsigned int = -1;
songwanqiang
2010-10-23
打赏
举报
回复
C99中有个<stdint.h>头文件,其中定义了挺多种类型的整型。
在支持C99编译器上可以使用uint16_t类型。
#include <stdint.h>
uint16_t b = ~0;
unsigned int a = b;
这样的话不同宽度类型会有自动隐式扩展,当然在编译器可信的前提下。
Athenacle_
2010-10-23
打赏
举报
回复
[Quote=引用 7 楼 samueltian 的回复:]
引用 6 楼 athenacle_ 的回复:
引用 5 楼 samueltian 的回复:
unsigned int a= ~0
如果用了32位的机器,~0不是成了unsigned int a = 0xffffffff ?
我不太明白你的意思,在非十六位的系统里面的unsigned int 有可能不是16位是32位啊。你到底想要赋一个怎么样的值呢?
[/Quote]
额。。这个。。我也不知道。。。问LZ去~我就是看LZ只要0xffff而不是0xffffffff。。。。
samueltian
2010-10-23
打赏
举报
回复
[Quote=引用 6 楼 athenacle_ 的回复:]
引用 5 楼 samueltian 的回复:
unsigned int a= ~0
如果用了32位的机器,~0不是成了unsigned int a = 0xffffffff ?
[/Quote]
我不太明白你的意思,在非十六位的系统里面的unsigned int 有可能不是16位是32位啊。你到底想要赋一个怎么样的值呢?
Athenacle_
2010-10-23
打赏
举报
回复
[Quote=引用 5 楼 samueltian 的回复:]
unsigned int a= ~0
[/Quote]
如果用了32位的机器,~0不是成了unsigned int a = 0xffffffff ?
samueltian
2010-10-23
打赏
举报
回复
unsigned int a= ~0
Athenacle_
2010-10-23
打赏
举报
回复
int a=0xffffu
do__i
2010-10-23
打赏
举报
回复
#include<limits.h>
unsigned int a=UINT_MAX;
selooloo
2010-10-23
打赏
举报
回复
65535?
千杯不醉-sen
2010-10-23
打赏
举报
回复
不清楚,非16位,32位?
android 65536(
0xffff
)问题
android在打包的时候会存在一个限制,classes.dex不可以超过65536(
0xffff
)个方法,如果超过了65536在安装的时候就会报错,无法进行安装Install Run。 在早期没有太多开源库的时候,这个问题还不是那么容易碰到,...
通过定时器的Timer
方式
替代delay/Hal_delay函数进行定时
3、效果 VID_20221102_200720 三、总结 通过定时器的TImer
方式
极大的利用了CPU资源,并且STMCube也构建好了许多库,可以直接对定时器进行操作,方便了许多。 四、参考资料 ...
java 0x_谈谈java中& 0xFF
上篇文章写了在java中常用的操作运算符,其内容很基础,大多数开发的时候可能只会用到移位算法,而与或非操作则通常会有其他使用
方式
,比如我在看《HowTomcatWorks》解析http请求头文件时使用了 &0xFF,其实我是...
C实用技巧
由于编译器默认对结构体数据成员进行对齐,有插入的空字节,就是占8个字节的空间,如果用我们指定的字节对齐
方式
,如: #pragma pack (1) typedef struct { int a; char b; short c; }A; 这样sizeof(A)运行...
c++学习2|零值的判断 大端小端 柔性数组 位断 点分十进制
sprintf 都使用格式化字符串来指定串的格式,在格式串内部使用一些以“%”开头的格式说明符(format specifications)来占据一个位置,在后边的变参列表中提供相应的变量,最终函数就会用相应位置的变量来替代那个...
C语言
69,371
社区成员
243,080
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章