标题:结构指针
取消只看楼主
LGD335060087
Rank: 2
等 级:论坛游民
帖 子:36
专家分:13
注 册:2020-3-15
结帖率:80%
已结贴  问题点数:10 回复次数:2 
结构指针
#include"stdio.h"
struct date{
    int year;
    int month;
    int day;
}today,*p;
int main()
{
    today=(struct date){.year=2020,.month=03,.day=15};
    p=&today;

    printf("%p\n",p);
    printf("%d",*p);
    return 0;
}
为什么*p输出一个奇怪的数字?
搜索更多相关主题的帖子: 指针 date 结构 printf int 
2020-03-15 15:41
LGD335060087
Rank: 2
等 级:论坛游民
帖 子:36
专家分:13
注 册:2020-3-15
得分:0 
回复 2楼 纯蓝之刃
如果说我要输出struct 中的所有成员就应该写成    printf("%p\n%p\n%p\n",p->year,p->month,p->day);

知识改变命运,代码更改时代
2020-03-15 16:30
LGD335060087
Rank: 2
等 级:论坛游民
帖 子:36
专家分:13
注 册:2020-3-15
得分:0 
回复 2楼 纯蓝之刃
为什么printf("%p",p);输出的地址和    printf("%p\n%p\n%p\n",p->year,p->month,p->day);    输出的第一个地址不同呢

知识改变命运,代码更改时代
2020-03-15 16:35



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-499772-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.585614 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved