struct用法 C语言中struct是个什么意思 怎么用 能不能通俗点说

作者&投稿:藏咱 (若有异议请与网页底部的电邮联系)

struct能定义各种类型的变量集合。

例如:

struct string Liming, Liuqi, ...;

如果省略结构名, 则称之为无名结构, 这种情况常常出现在函数内部, 用这种结构时前面的例子变成:

struct 

{
char name[8]; 

     int age; 

     char sex[2]; 

     char depart[20]; 

     float wage1, wage2, wage3, wage4, wage5; 

} Liming, Liuqi;

总之struct是个自定义的数据结构,用来放多一点的东西的,就像一个盒子,里面可以放多种东西
struct node * 是指针,用来指向这个数据结构的,不要不可以。

扩展资料:

注意事项

在C语言中,可以使用结构体(Struct)来存放一组不同类型的数据。结构体的定义形式为:

struct 结构体名{

    结构体所包含的变量或数组

};

结构体是一种集合,它里面包含了多个变量或数组,它们的类型可以相同,也可以不同,每个这样的变量或数组都称为结构体的成员。



关键字struct能定义各种类型的变量集合,称为结构(structure),并把它们视为一个单元。

1.struct的简单例子
下面是一个struct的简单的声明例子:
struct
horse
{
int
age;
int
height;
}
Silver;

这个例子声明了一个结构horse。horse不是一个变量名,而是一个新的类型,这个类型名称通常称为结构标记符(structure tag)或标记符名称(tag name)。结构标记符的命名方式和我们熟悉的变量名相同。
注意:
结构标记符可以和变量使用相同的名称,但最好不要这么做,因为这会使代码难以理解。
在这个结构例子中,结构的一个实例Silver是在定义结构时声明的。它是一个horse类型的变量,只要使用变量名称Silver,它都包含两个结构成员:age和height。

上述的例子也可变得复杂一些,如下:
struct
horse
{
int age;
int height;
char name[20];
char father[20];
char mother[20];
}
Dobbin = {24, 17, "Dobbin", "Trigger", "Flossie"};

1.1定义结构类型和结构变量

可以将结构的声明和结构变量的声明分开。取代前面例子的语句如下:
struct
horse
{
int age;
int height;
char name[20];
char father[20];
char mother[20];
};
struct horse Dobbin = {24, l7, "Dobbin", "Trigger", "Flossie"
};
现在有两个分开的语句。第一个定义结构标记符horse,第二个声明该类型的变量Dobbin。结构定义和结构变量声明语句都用分号结束。在Dobbin结构成员的初始值中,Dobbin的父亲是Trigger,母亲是Flossie。

1.2访问结构成员

要引用结构成员,应在结构变量名称的后面加上一个句点,再加上成员变量名称。例如,发现Dobbin隐瞒了它的年龄,事实上它比初始化的值年轻,就可以将值修正如下:
Dobbin.age = 12;
结构变量名称和成员名称间的句点是一个运算符,称为成员选择运算符。这行语句Dobbin结构的age成员设定成12。结构成员和相同类型的变量完全一样,可以给它们设定值,也可以在表达式中像使用一般变量一样使用它们。

用下面的语句定义horse结构:
struct
horse
{
int age;
int height;
char name[20];
char father[20];
char mother[20];
};
这个结构有两个整数成员age和height,以及三个字符数组成员name、father和mother。在闭括号的后面仅是一个分号,还没有声明horse类型的变量。在定义完horse结构后,具有如下语句:
struct
horse My_first_horse;

1.3未命名的结构
不—定要给结构指定标记符名字。用一条语句声明结构和该结构的实例时,可以省略标记符名字。在上一个例子中,声明了horse类型和该类型的实例My_first_horse,也可以改为:
struct
{
int age;
int height;
char name[20];
char father[20];
char mother[20];
}
My_first_horse;
使用这种方法的最大缺点是不能在其他语句中定义这个结构的其他实例。这个结构类型的所有变量必须在一行语句中定义。

struct是个自定义的数据结构,用来放多一点的东西的,就像,一个盒子,里面可以放多种东西
struct node * 是指针,用来指向这个数据结构的
都是基本常识,自己翻书看看

定义结构体类型时需要struct关键字,表明定义的是一个聚合类型(之后可以在{}之间定义它的成员)。结构体类型定义后,C++中在相同命名空间无相同对象名的情况下可以省略struct直接用结构体名表示类型名,此时struct node*和node*没区别。对于typedef,限制相同。关于typedef的用法,LZ参考自己问的另外问题。
struct node *lchild,*rchild;声明了两个对象,struct node*类型的lchild和struct node*类型的rchild,其中struct node*类型是指向struct node的指针类型。由于指针类型可以在被指向类型不完整定义的情况下定义,因此可以用在结构体定义的内部定义struct node*对象,而无需再struct node定义好之后才能定义。
====
[原创回答团]

struct用法是什么?~

struct:一种构造数据类型


Trust 跟 believe 的用法有什么不同?
答:truct sb=believe in sb不等于believe sb 灰色的树 | 发布于2007-08-30 举报| 评论 1 0 为您推荐: help的用法 need的用法 disagree的用法 benefit的用法 beyond 用法 permit用法 bike用法 shall的用法 BELIEVE ML BELIEVE服装 其他类似问题2015-03-07 believe 和 believe in 用法上有什么区别...

roce中文翻译
答:451 requested actio aborted . local error i roce ing 请求的操作中止。处理中发生本地错误。A ofare development tool that tra late human - readable a embly languageprogram into machine - language i tructio that the roce or ca understandand execute 一个能把人可读的汇编语言程...

Trust 跟 believe 的用法有什么不同?
答:believe,believe in ,trust 这一对词语都表示“相信不疑”的意思,但词意有细微的区别。Believe表示“相信”、“信以为真”(to accept as true)之意,它是及物动词,其后直接跟宾语。例:Do you believe his reports?你相信他的报告吗?I could hardly believe my eyes.我几乎不能相信自己的眼...