A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 驴小叔 中级黑马   /  2015-9-7 22:05  /  698 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

#include <stdio.h>

typedef struct
{
    int age;
    char *name;
} Student;

typedef Student * StuP;

int main()
{
    Student stu;
   
    StuP p = &stu;
   
    p.age = 10;
    p.name = "rose";
    return 0;
}

5 个回复

倒序浏览
p.age和p.name换为p->age,p->name或(*p).age,(*p).name;因为p是指向student的指针,不是结构体实例本身,所以你就需要先获得实例再用.访问其成员,而->就是直接间接引用起成员变量,两种用法是等价的
回复 使用道具 举报
typedef Student * StuP;???????????
回复 使用道具 举报
Student stu; 需要初始化吧
回复 使用道具 举报
weicongcing 发表于 2015-9-8 14:06
Student stu; 需要初始化吧

不需要初始化也可以
回复 使用道具 举报
沙发那一层说的是对的,因为StuP是指针类型,因此这个类型的变量若要访问成员变量,需要使用->
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马