结构体声明

结构体用来声明一个新的类型。它可以将多个变量捆绑在一起。

我们可以使用结构体表示更加复杂的数据类型。例如,为了表示一个二维空间里的点,我们可以创建一个名为 point 的结构体将两个 float 类型的变量 xy 绑在一起。我们可以同时使用 structtypedef 来声明一个结构体:

  1. typedef struct {
  2. float x;
  3. float y;
  4. } point;

注意,我们应该将结构体放在所有用到它的函数的上方。这个类型和内建的基本数据类型的用法没有任何区别。获取结构体内部的变量时,需要使用小数点 .,后面紧跟要获取的变量名:

  1. point p;
  2. p.x = 0.1;
  3. p.y = 10.0;
  4. float length = sqrt(p.x * p.x + p.y * p.y);