不同变量在内存中的存在形式(以16进制表示)

Posted onemusk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了不同变量在内存中的存在形式(以16进制表示)相关的知识,希望对你有一定的参考价值。

 1 #include<stdio.h>
 2 int main()
 3 {
 4     char a= -1;           //1111 1111 1个字节
 5     short b= -1;         //1111 1111- 1111 1111 2个字节
 6     int c= -1;          //1111 1111- 1111 1111- 1111 1111- 1111 1111 4个字节
 7     printf("%hhx
",a); //打印1个字节
 8     printf("%hx
",b);  //打印2个字节
 9     printf("%x
",c);  //打印4个字节
10     return 0;
11 }

打印结果:

技术分享图片技术分享图片?

注:

此编译平台为linux系统环境下的centos6.7;若用Qt平台则无法正确编译

格式%x表示打印16进制,1111的16进制表示为一个f

以上是关于不同变量在内存中的存在形式(以16进制表示)的主要内容,如果未能解决你的问题,请参考以下文章

浮点型数据在内存中的存储

Golang指针

汉字在计算机内存中,到底是以啥形式存在的?

打印变量地址-0x%08x

Java按位运算符之按位取反

C语言 如何将16进制形式的字符串,转化为相同的16进制的整型?