2021-02-23

本文探讨了C语言中使用指针和数组两种方式打印内存地址和元素值的情况。通过示例代码,展示了`pa[0]`与`a[0]`在表达式中的等价性,解释了为何两种不同的打印方式能得到相同的结果。这有助于理解C语言中指针和数组的关系及内存访问原理。
摘要由CSDN通过智能技术生成

指针小题,求大佬看一下

如下:

#include<stdlib.h>
int main(void)
{
int a[4]={1,2,3,4},* pa;
pa=a;
printf(“pa=%p,pa[0]=%d,pa[1]=%d,pa[2]=%d,pa[3]=%d”,pa,pa[0],pa[1],pa[2],pa[3]);
system(“pause”);
return 0;
}*

下面为另一种书写方式

#include<stdlib.h>

int main(void)
{
int a[4]={1,2,3,4},* pa;
pa=a;
printf(“pa=%p,a[0]=%d,a[1]=%d,a[2]=%d,a[3]=%d”,pa,a[0],a[1],a[2],a[3]);
system(“pause”);
return 0;
}
本人感觉第二种方式更正式,第一种好像没有 pa[0] 这样的符号,为什么最后两个运行结果是一样的,求大佬解答,谢谢啦!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值