C语言”%p”的意思

您所在的位置:网站首页 ipo中的p指的是什么意思啊 C语言”%p”的意思

C语言”%p”的意思

2024-06-01 01:06| 来源: 网络整理| 查看: 265

printf("%p",p)    

%p是打印地址(指针地址)的,是十六进制的形式,但是会全部打完,即有多少位打印多少位。

32位编译器的指针变量为4个字节(32位),64位编译器的指针变量为8个字节(64位)。

所以,在32位编译器下,使用%p打印指针变量,则会显示32位的地址(16进制的);在64位编译器下,使用%p打印指针变量,则会显示64位的地址(16进制的),左边空缺的会补0。

%x:无符号十六进制整数(字母小写,不像上面指针地址那样补零)

%X:无符号十六进制整数(字母大写,不像上面指针那样补零)

%x、%X和%p的相同点都是16进制,不同点是%p按编译器位数长短(32位/64位)输出地址,不够的补零

下图中指针形式为64位,即阿紫64位编译器下运行的

上图片来自下面的第一个参考博客,里面有该图的运算代码。

参考:

C语言”%p”的意思:https://blog.csdn.net/i_pangpang/article/details/80261647

关于printf("%p",p);使用方法的一些总结:https://blog.csdn.net/Dandelion_drq/article/details/44597633



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3