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 請按任意鍵繼續. . .
相關文章
相關標籤/搜索