社区
新手乐园
帖子详情
int i = 0x12345678;
sunboyljp
2006-12-25 10:35:43
int i = 0x12345678;
if (*(char *)&i == 0x12)
今天在网上看到这个,那我想问一下:(char*)&i是什么意义啊?
...全文
356
3
打赏
收藏
int i = 0x12345678;
int i = 0x12345678; if (*(char *)&i == 0x12) 今天在网上看到这个,那我想问一下:(char*)&i是什么意义啊?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
blue_zyb
2006-12-25
打赏
举报
回复
to:ls
big endian机器上为true,little endian机器上为false
cmouse
2006-12-25
打赏
举报
回复
&是取I的指针, (char*)是把这个指针强制转成字符指针, 前面的一个*是取出这个位置的值, 这个判断是“真”
blue_zyb
2006-12-25
打赏
举报
回复
就是把i的地址(&i)强制转换为char*。
在解除引用的时候,这个地址里面的内容将被解释为一个char
也就是, *(char*)&i 得到的是i第一个字节里面的内容(解释为char)
C语言中
int
型
0x12345678
转成char型“12345678“
【代码】C语言中
int
型
0x12345678
转成char型"12345678
大小端问题
大小端问题是面试常考的题目,所以有必要总结一下。 1.什么是大小端? 小端:低位字节数据存储在低地址。...
int
a=
0x12345678
;(a首地址为0x2000) 0x2000 0x2001 0x2002 0x2003 0x12 0x34 0x56 0x78 大端格式 0x2...
【笔试题】有关大小端问题
#include void main() { union { short k; char i[2]; }*s, a; s = &a;... s->i[0] = 0x39;... s->i[1] = 0x38;...
int
q = a.k;... //
int
i =
0x12345678
; //pr
int
f("%0x\n",i); system("pause"); }
c语言中数据存放方式(大小端)
int
a =
0x12345678
;(a在内存中占4个字节) char* b = (char*)&a; 如果b[0]对应的值为0x12,则高位数据存放在低址值(大端) 如果b[0]对应的值为0x78,则低位数据存放在低地址(小端) #include<stdio.h> ...
int
i =(short ) 0x800
(1)short i = 0x8000;//有警告:“初始化”: 截断常量值” (2)
int
j = i;...因为(1)0x8000是数字,数字默认是
int
型的,
int
的表示范围比short大,所以从
int
隐式转换为short会警告截断。如果改成显示转换shor
新手乐园
33,321
社区成员
41,774
社区内容
发帖
与我相关
我的任务
新手乐园
C/C++ 新手乐园
复制链接
扫一扫
分享
社区描述
C/C++ 新手乐园
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章