2.%p是打印地址的, %x是以十六進制形式打印, 完全不同!另外在64位下結果會不一樣, 所以打印指針老老實實用%p .
(3) 測試代碼 :
#include<stdio.h>
int main()
{
int arr[5] = {10,20,30,40,50};
int i = 0;
printf("數據:\n\n");
printf("十進制表示的數據:\n");
for(i = 0 ; i < 5 ; i++)
{
printf("%d\t",arr[i]);
}
printf("\n\n指針形式十六進制表示的數據:\n");
for(i = 0 ; i < 5 ; i++)
{
printf("%p\t",arr[i]);
}
printf("\n\n普通十六進制表示的數據:\n");
for(i = 0 ; i < 5 ; i++)
{
printf("%x\t",arr[i]);
}
printf("\n\n\n地址:\n");
printf("\n\n十進制表示的地址:\n");
for(i = 0 ; i < 5 ; i++)
{
printf("%d\t",&arr[i]);
}
printf("\n\n指針形式十六進制表示的地址:\n");
for(i = 0 ; i < 5 ; i++)
{
printf("%p\t",&arr[i]);
}
printf("\n\n普通十六進制表示的地址:\n");
for(i = 0 ; i < 5 ; i++)
{
printf("%x\t",&arr[i]);
}
printf("\n");
}
————————————————
版權聲明:本文為CSDN博主「i.czy」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/i_pangpang/article/details/80261647