9.5 C++指向结构体变量的指针

C++经过指向结构体变量的指针引用结构体变量中的成员 C++中,一个结构体变量的指针就是该变量所占据的内存段的起始地址,指针变量也能够用来指向结构体数组中的元素。  C++提供了指向结构体变量的运算符->,例如:p->num;//表示指针p当前指向的结构体变量中的成员nump->num 和(*  p).num 等价,一样,p->namep->name等价于(*p).name。在C++中,如下3种形式等价:  
  • 结构体变量.成员名,如stu.num。ios

  • (*p).成员名,如( *p).num。数组

  • p->成员名,如p->num,->称为指向运算符。 ide

p->n;//获得p指向的结构体变量中的成员n值。
p->n++;//获得p指向的结构体变量中的成员n的值,用完该值后使它加1。
++p->n;//获得p指向的结构体变量中的成员n的值,并使之加1,而后再使用它。 经典案例:C++指向结构体变量的指针。#include<iostream>//预处理 using namespace std;//命名空间 int main()//主函数 {   struct Student{ //自定义结构体变量     int num;//学号     char sex;//性别     int age;//年龄   };   Student stu;//定义Student类型的变量stu   Student *point=&stu;//定义point为指向Student类型数据的指针变量并指向stu   stu.num=1001;//赋值   stu.sex='M';//赋值   stu.age=21;//赋值   cout<<stu.num<<endl;//输出学号   cout<<stu.sex<<endl; //输出性别   cout<<stu.age<<endl; //输出年龄   cout<<"--------"<<endl;   cout<<(*point).num<<endl;//输出学号   cout<<(*point).sex<<endl;//输出性别   cout<<(*point).age<<endl;//输出年龄   return 0; //函数返回值为0; }编译运行结果: 1001 M 21 -------- 1001 M 21 -------------------------------- Process exited after 0.08501 seconds with return value 0 请按任意键继续. . .
相关文章
相关标签/搜索