成员运算符(·)和指向结构体成员运算符(->)的区别


成员运算符(·)和指向结构体成员运算符(->)的区别

两者都是用来引用结构体变量的成员,但它们的应用环境是完全不一样,前者是用在一般结构体变量中,而后者是与指向结构体变量的指针连用,例如:有定义

 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