c 输出地址格式符%p

来源:互联网 发布:先科网络机顶盒刷机包 编辑:程序博客网 时间:2024/05/29 04:18

c语言中,有常用的几种格式符,%o输出八进制,%d输出十进制,%x输出十六进制,%f输出浮点型数据,%c输出单个字符,%s输出字符串,%l输出长整型。但是也有稍微不是很常用的格式符,%p就是其中之一。相信大家在日常中使用得比较少,其实它的输出格式也是六进制,跟%x的区别在于,%p输出的长度是一致的8位16进制符(即32位2进制符)。

以下是一段示例程序,将帮助你理解%p的简单用法:

#include "stdio.h"


int main(int argc, char* argv[])
{
printf("Hello World!/n");

//session 1:%p格式符用来输出变量在内存中的地址,是一个十六进制数
//常用的格式符有 %d是十进制格式,%o是八进制格式,%x是十六进制格式
int i, j;
printf("p-16: %p %p/n", &i, &j);

printf("o-8 : %o %o/n", &i, &j);

printf("d-10: %d %d/n", &i, &j);

printf("x-16: %x %x/n", &i, &j);

//conclusion : 可以使用%p格式符输出变量地址

return 0;
}

原创粉丝点击