c java int_关于c语言中的定义int类型的常量

展开全部

可以这样定义 但行2113尾必须加分5261号。

不过你这样4102定义的是变量 并不是常量1653

要定义常量可以写为

const int a = 0x12345678;

或者版直接用宏定权义

#define CONST_A 0x12345678

PS:宏定义时无需加分号

int a =0x12345678;//定义一个变量a 并赋值为0x12345678. 这时会给a分配一个sizeof(int)的空间,一般为4

char b;  //定义字符变量b

b = (((unsigned char *)&(a))[0]);

//这个需要分几步来理解

//&(a)取a的地址

//((unsigned char *)&(a)) 把它转换成无符号字符型指针

//这个指针是指向a的首地址的 所以 这个无符号字符型指针指向的区域就有和a同样的值

//即四个字节,分别为0x12 0x34 0x56 0x78

//((unsigned char *)&(a))[0] 取第一个值 即0x12

//所以最终b的值为0x12

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值