正文

C++入门第7章7.1.5指向结构体变量的指针[例7.3 ]2008-10-24 12:26:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/yzrj/39070.html

分享到:

 

7.3 指向结构体
变量的指针的应用。
#include <iostream>
#include <string>
using namespace std;
int main( )
{struct Student             //声明结构体类型student
{ int num;
string name;
char sex;
float score;
};
Student stu;                //定义Student类型的变量stu
Student *p=&stu;            //定义p为指向Student类型数据的指针变量并指向stu
stu.num=10301;              //stu中的成员赋值
stu.name=Wang Fun;        //string变量可以直接赋值
stu.sex=f;
stu.score=89.5;
cot<<stu. num<< <<stu.name<< <<stu.sex<< <<stu.score<<endl;
cout<<(*p)>num<< <<(*p).name<< <<(*p).sex<< <<(*p).score<<endl;
return 0;
}

 
程序运行结果如下:
10301 Wang Fun f 89.5                (通过结构体变量名引用成员)
10301 Wang Fun f 89.5                 (通过指针引用结构体变量中的成员)
两个cout语句输
出的结果是相同的。
为了使用方便
和使之直观,
C++提供了指向
结构体变量
运算符->
例如p->num表示
指针p
前指向的结构
变量中的成员num
p->num (*p).num
等价。同样,
p->name等价于(*p).name
也就是说,
以下3种形式等价:
  结构体变量.成员名。
stu.num
  (*p).成员名。
(*p).num
  p->成员名。
p->num->
为指向运算符。
请分析以下几种运算:
p->n       得到p指向的
结构体变量中的成员n的值。
p->n++  得到p指向的
结构体变量中的成员n的值
,用完该值后使它加1
++p->n  得到p指向的
结构体变量中的成员n的值,
并使之加1,然后再使用它。

阅读(3111) | 评论(1)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

loading...
您需要登录后才能评论,请 登录 或者 注册