C语言中怎么输出数组的首地址

不借助指针赋值神马的可以么?
2025-02-24 06:55:25
推荐回答(3个)
回答1:

%p 直接用16进制地址形式输出地址
%d 把地址直接用10进制形式输出
char a[] = "hellow C++";
int b[] = {0x01,0x02,4,0x08,0};
如上数组如下输出都可以:
printf("十进制地址%d 十六进制地址%p", a, a);
printf("十进制地址%d 十六进制地址%p", b, b);
printf("十进制地址%d 十六进制地址%p", &a[0], &a[0]);
printf("十进制地址%d 十六进制地址%p", &b[0], &b[0]);

回答2:

char a[10]; printf("%d",&a[0]);

回答3:

例如数组a[5];
直接
printf("%p",a);