#includeusing namespace std; struct antarctica_years_end { int year; }; int main() { antarctica_years_end s01,s02,s03; s01.year = 1998; antarctica_years_end *pa = &s02; pa->year = 1999; antarctica_years_end trio[3]; trio[0].year = 2003; //trio是结构数组,可以使用成员运算符访问元素的成员 (trio+1)->year = 2004; //而数组名是一个指针,也可以使用间接成员运算符 trio[2].year = 2005; cout << trio->year << endl; //trio->year : 默认trio结构数组的首元素 cout << trio[1].year << endl; //访问trio结构数组的第二个元素 // cout << (trio+2)->year << endl; const antarctica_years_end *arp[3] = {&s01,&s02,&s03}; //定义指向常量的结构体类型的指针数组 cout << arp[1]->year << endl; const antarctica_years_end **ppa = arp; //指向结构体指针的指针(地址的地址) cout <<(*ppa)->year << endl; auto ppb = arp; //自动匹配ppb和arp的类型 cout << (*(ppb+1))->year << endl; cout << ppb[1]->year << endl; //输出方式同26行代码 }
学习书本为《C++ Primer Plus》



