#include
#include
main()
{
struct stu
{
char name[20];
}*p;
p=(struct stu )malloc(sizeof(struct stu));
scanf("%s",p->name);
printf("name:%s\n",&(p->name));
printf("name:%s\n",*&(p->name));
printf("name:%s \n",&(p->name));
}
这三者作用相同,意思有什么不同么
都能编译运行,都能输出,q区别什么
C语言指针,请问三者区别
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- threenewbee 2017-10-22 01:37关注
p->name是数组,相当于指针
而对于%s,无论是数组地址还是数组首元素地址,其实一样,所以3的结果也一样本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 matlab有限元法求解梁带有若干弹簧质量系统的固有频率
- ¥15 找一个网络防御专家,外包的
- ¥100 能不能让两张不同的图片md5值一样,(有尝)
- ¥15 informer代码训练自己的数据集,改参数怎么改
- ¥15 请看一下,学校实验要求,我需要具体代码
- ¥50 pc微信3.6.0.18不能登陆 有偿解决问题
- ¥20 MATLAB绘制两隐函数曲面的交线
- ¥15 求TYPCE母转母转接头24PIN线路板图
- ¥100 国外网络搭建,有偿交流
- ¥15 高价求中通快递查询接口