文章目录
结构体三种写法
struct s
{
int a;
char arr[10];
char b;
};
struct s
{
int a;
char arr[10];
char b;
}a, b, c;
a, b, c为struct s 类型全局变量
3.
typedef struct book
{
int a;
char arr[10];
char b;
}book;
typedef struct book
{
int a;
char arr[10];
char b;
}book;
void print(book *b1)
{
printf("%d %s %c", b1->a, b1->arr, b1->b);
}
int main()
{
book b1 = { 10,"我爱代码",'a' };
book b2 = { .b = 56,.arr = "代码爱我",.b = 'b' };
print(&b1);
}
在结构体传参时我们应避免将结构体对象即结构体变量进行传参,如果传递一个结构体对象的时候,结构体过大,参数压栈的系统开销比较大,所以会导致性能的下降
结构体成员访问操作符
. :结构体.成员名
->:结构体指针->成员名