#结构体的初始化及内部成员存储方式
定义一个结构体,它的地位和 int 等内置类型地位是一样的,在使用方法上也大体相同,比如我们可以用用一个结构体初始化另一个结构体
struct student s3 = s1;
也可以像普通变量在传参时有按值传递和按址传递。
注意:定义结构体在花括号外面一定要加分号。
1. 结构体传参
按值传递想当于重新拷贝了一份数据给调用函数,调用函数对结构体变量的数据进行修改时不会对原来的内容进行修改。
而按地址或引用传递时,调用函数的修改是对结构体变量本身进行操作。和 int 等系统内置类型数据的操作方法是相同的。(按引用传递也可以认为是按地址传递。)
2. 结构体的初始化
#include <stdio.h>
#include<stdio.h>
#include<string.h>
struct point
{
double x;
double y;
};
struct student
{
int ID;
char name[20];
struct point pos;
//结构体的嵌套,结构体可以嵌套其他的结构体,也可以嵌套指向自己的指针,但不能嵌套结构体自身