成員運算符(·)和指向結構體成員運算符(->)的區別


成員運算符(·)和指向結構體成員運算符(->)的區別

兩者都是用來引用結構體變量的成員,但它們的應用環境是完全不一樣,前者是用在一般結構體變量中,而后者是與指向結構體變量的指針連用,例如:有定義

 struct student

   {

   long num;

   float score;

   };

  struct student stud, *ptr=&stud;

 則stud.num、stud.score、ptr->num等都是正確的引用方式,但ptr.num、stud->num就是不允許的,其實ptr->num相當於(*ptr).num,只是為了更為直觀而專門提供了這->運算符。

最后指出,這兩者都具有最高優先級,按自左向右的方向結合


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM