对于结构体指针,使用-> 符号来访问变量。
#include<iostream>
using namespace std;
struct UserInfo{
int id;
int age;
};
int main() {
UserInfo info;
UserInfo* p = &info;
info.id = 888;
info.age = 25;
cout << p->age;// 指针使用 -> 来访问成员变量
}
匿名结构体,定义了一个匿名的结构体,并且声明了一个info变量。因为这个结构体是匿名的,所以没有办法用它再来声明其他的变量。
struct {
int id;
int age;
} info ;
结构体存在对齐问题,所使用sizeof 计算一个结构体的大小的时候,得到的不一定是其中所有成员变量sizeof的值之和,详细的计算参考博客及博客