C语言初阶(四)进制

一.进制常量表示

C语言不能直接表示二进制常量。八进制数字以0开头,十六进制数字以0x0X开头。 

 

二.输入 输出

 

十六进制数字的表示用到了英文字母,有大小写之分,要在格式控制符中体现出来:

  • %hx、%x 和 %lx 中的x小写,表明以小写字母的形式输出十六进制数;
  • %hX、%X 和 %lX 中的X大写,表明以大写字母的形式输出十六进制数。

for(int i=0;i<32;++i){
    printf("%d\n",i);  //十进制
    printf("%#o\n",i); //八进制
    printf("%#x\n",i); //十六进制
}

区分不同进制数字的一个简单办法就是,在输出时带上特定的前缀。在格式控制符中加上#即可输出前缀 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
结构体在C语言是一种用户自定义的数据类型,可以包含多个不同类型的数据成员。结构体的内存布局是按照成员的先后顺序存储的,而且每个成员的内存地址是连续的。 在C语言,结构体的二进制表示是根据其成员的数据类型和内存布局来确定的。对于每个成员变量,都会有一定大小的内存空间来存储其值。在内存,结构体的数据成员是按照其定义的顺序依次排列的,每个成员变量的内存地址是按照连续的方式分配的。 当我们将一个结构体对象写入磁盘或进行网络传输时,需要将结构体对象转换为二进制数据。这个过程称为序列化。在序列化结构体时,需要按照成员的内存布局和数据类型来将结构体的数据逐个转换为对应的二进制表示。而在接收到二进制数据后,需要进行反序列化,将二进制数据还原为结构体对象。 在C语言,可以使用指针来操作结构体对象的二进制数据。通过指针,可以获取结构体对象的内存地址,并直接对其进行操作。同时,也可以将指针强制类型转换为其他类型的指针,以便对结构体对象进行更灵活的操作。 总之,结构体在C语言的二进制表示是根据其成员的数据类型和内存布局来确定的,可以通过序列化和反序列化将结构体转换为二进制数据,并且可以使用指针来操作结构体对象的二进制数据。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值