c语言 结构成员 变量引用,C++结构体变量的引用

在定义了结构体变量以后,当然可以引用这个变量,常用的方法有以下几种。

1) 可以将一个结构体变量的值赋给另一个具有相同结构的结构体变量。

如上面的student1和student2都是student类型的变量,可以这样赋值:

student1= student2;

2) 可以引用一个结构体变量中的一个成员的值。

例如, student1.num表示结构体变量student1中的成员的值,如果student1的值如图7.2所示,则student1.num的值为10001。

引用结构体变量中成员的一般方式为:

结构体变量名.成员名

例如可以这样对变量的成员赋值:

student1.num=10010;

3) 如果成员本身也是一个结构体类型,则要用若干个成员运算符,一级一级地找到最低一级的成员。

例如,对上面定义的结构体变量student1,可以这样访问各成员:

student1.num (引用结构体变量student1中的num成员)

如果想引用student1变量中的birthday成员中的month成员,不能写成student1.month,必须逐级引用,即

student1.birthday.month=12;  (引用结构体变量student1中的birthday成员中的month成员)

4) 不能将一个结构体变量作为一个整体进行输入和输出。

例如,已定义student1和student2为结构体变量,并且它们已有值。不能企图这样输出结构体变量中的各成员的值

cin>>student1;

只能对结构体变量中的各个成员分别进行输入和输出。

5) 对结构体变量的成员可以像普通变量一样进行各种运算(根据其类型决定可以进行的运算种类)。例如:

student2.score=student1.score;

sum=student1.score+student2.score;

student1.age++;

++student1.age;

由于“.”运算符的优先级最高,student1.age++相当于(student1.age)++ 。++是对student1.age进行自加运算,而不是先对age进行自加运算。

6) 可以引用结构体变量成员的地址,也可以引用结构体变量的地址。如:

cout<

cout<

结构体变量的地址主要用作函数参数,将结构体变量的地址传递给形参。

【例7.1】引用结构体变量中的成员。

#include

using namespace std;

struct Date//声明结构体类型Date

{

int month;

int day;

int year;

};

struct Student//声明结构体类型Student

{

int num;

char name[20];

char sex;

Date birthday; //声明birthday为Date类型的成员

float score;

}student1,student2={10002,"Wang Li",'f',5,23,1982,89.5};

//定义Student 类型的变量student1,student2,并对student2初始化

int main( )

{

student1=student2; //将student2各成员的值赋予student1的相应成员

cout<

cout<

cout<

cout<

cout<

return 0;

}

运行结果如下:

10002

Wang Li

f

5/23/1982

89.5

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值