
struct是将某些数据项组合在一起的数据结构. 在Go和Rust中,这些新语言都保留了struct的概念,这是C的本质.
示例: 将定义为结构,信息内容包括学生的姓名(字符串),学生编号(长)c 嵌套类,年龄(int)等,可以声明如下:
struct { char sName[10]; long sNo; int sAge; };
该结构本质上是一种数据类型c 嵌套类,类似于C语言的内置内在函数(char,int,long ...),我们可以使用它来定义变量,例如:

// 定义一个学生jack就可以这样: struct { char sName[10]; long sNo; int sAge; } jack ; // 如还要再定义一个学生rose; struct { char sName[10]; long sNo; int sAge; } rose;
我们发现每次定义这样的结构变量都是很麻烦的. 我们必须每次都写完整的结构类型声明,因此我们在struct关键字之后引入了“结构标签”,例如上面的结构. 可以将结构声明为:
struct stuInfo{ char sName[10]; long sNo; int sAge; };
定义变量:

struct stuInfo jack; struct stuInfo rose;
从OOP角度看,struct stuInfo是“类型”.
OOP类的味道在这里更多.
使用typedef时,struct的定义可以直接使用匿名结构,并使用typedef定义新的类型名称:

typedef struct {
char a;
int b;
char c;
int d;
} DATA;
对于已定义名称的结构,可以通过typedef将名称添加到类型中.
示例: 重命名上述结构stuInfo,例如sInfo:
typedef struct stuInfo sInfo;

定义变量:
sInfo jack;
sInfo rose;
sInfo是“类型”.
将以上步骤融合在一起是我们通常用来定义结构变量的方法:
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-218185-1.html
演员杨洋