什么是struct

什么是struct

本文目录

  • 什么是struct
  • struct在c语言中是什么意思
  • instructed,well-known,publish,surrounds,fired,reluctantly的近义词是什么求解啊!知道几个说几个!
  • Struct是什么数据类型
  • 结构体定义是什么
  • struct :c语言中的这个是什么意思啊
  • C语言中struct是个什么意思 怎么用 能不能通俗点说
  • struct是什么意思在C语言程序中
  • struct用法是什么
  • c语言struct是什么意思

什么是struct


在C语言里,struct 是一个关键字,是系统保留的,用来声明结构体的。
比如
struct node
{
int a;
int b;
char c;
};
则struct node是一个结构体类型,可以用它定义变量,比如
struct node ss;
则ss是struct node类型的变量。
可以这样访问结构体中的各字段值:
ss.a=5;
ss.c=’f’;

struct在c语言中是什么意思


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

结构体的定义形式为:

struct结构体名{

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

};

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

例子:

struct stu{

char *name; //姓名

int num; //学号

int age; //年龄

char group; //所在学习小组

float score; //成绩

};

stu为结构体名,它包含了5个成员,分别是name、num、age、group、score。结构体成员的定义方式与变量和数组的定义方式相同,只是不能初始化。

扩展资料

结构体变量——

既然结构体是一种数据类型,那么就可以用它来定义变量。

例如:

struct stu stu1, stu2;
定义了两个变量 stu1 和 stu2,它们都是 stu 类型,都由 5 个成员组成。注意关键字struct不能少。
stu 就像一个“模板”,定义出来的变量都具有相同的性质。也可以将结构体比作“图纸”,将结构体变量比作“零件”,根据同一张图纸生产出来的零件的特性都是一样的。


instructed,well-known,publish,surrounds,fired,reluctantly的近义词是什么求解啊!知道几个说几个!


instructed--mandated,
well-known--famous
publish--release, announce
surround--besiege(有围困的意思,也有围住的意思)
reluctantly--grudgingly, unwillingly

Struct是什么数据类型


struct,C语言结构体。通俗讲就是打包封装,把一些有共同特征(比如同属于某一类事物的属性)的变量封装在内部,通过一定方法访问修改内部变量。在实际问题中,一组数据往往具有不同的数据类型。例如在学生登记表中,姓名应为字符型;学号可为整型或字符型;年龄应为整型;性别应为字符型;成绩可为整型或实型,因为数组中各元素的类型和长度都必须一致,以便于编译系统处理,所以不能用一个数组来存放这一组数据,为了解决这个问题,C语言中就给出了这种构造数据的类型“结构”,它相当于其它高级语言中的记录。

结构体定义是什么


结构体的定义如下所示,struct为结构体关键字,tag为结构体的标志,member-list为结构体成员列表,其必须列出其所有成员;variable-list为此结构体声明的变量。在一般情况下,tag、member-list、variable-list这3部分至少要出现2个。

结构体的成员可以包含其他结构体,也可以包含指向自己结构体类型的指针,而通常这种指针的应用是为了实现一些更高级的数据结构如链表和树等。如果两个结构体互相包含,则需要对其中一个结构体进行不完整声明。

扩展资料:

结构体作用:

结构体和其他类型基础数据类型一样,例如int类型,char类型,只不过结构体可以做成你想要的数据类型,以方便日后的使用。 

在实际项目中,结构体是大量存在的,研发人员常使用结构体来封装一些属性来组成新的类型。由于C语言内部程序比较简单,研发人员通常使用结构体创造新的“属性”,其目的是简化运算。 

结构体在函数中的作用不是简便,其最主要的作用就是封装。封装的好处就是可以再次利用。让使用者不必关心这个是什么,只要根据定义使用就可以了。

struct在C语言中是一个关键字,用于定义结构数据类型。

如下代码,则可以直接在结构体后面定义一个zhang_san的结构体变量。

struct?student

{

int?num;

struct?student?*next;

}zhang_san;  而第一种的定义,则会出现错误。

typedef?struct?student

{

?int?num;

?struct?student?*next;

}student?zhang_san;


struct :c语言中的这个是什么意思啊


struct是结构体。

结构是由基本数据类型构成的、并用一个标识符来命名的各种变量的组合。 结构中可以使用不同的数据类型。

要想定义结构,必须用到struct关键字,struct的语句格式:

struct 结构名     
{          
类型  变量名;          
类型  变量名;
...     
} 结构变量;    

扩展资料:

定义结构体类型变量的方法

(1)先声明结构体类型再定义变量名

如上面已定义了一个结构体类型 struct student,可以用它来定义变量。如:

struct student //结构体类型名

student1, student2//结构体变量名

定义了 student1, student2 为 struct student 类型的变量。

在定义了结构体变量后,系统会为之分配内存单元。例如 student1 和 student2在内存中各占59个字节。

应当注意,将一个变量定义为标准类型(基本数据类型)与定义为结构体类型不同之处在于后者不仅要求指定变量为结构体类型,而且要求指定为某一特定的结构体类型(例如 struct student 类型),因为可以定义出许多种具体的结构体类型。

而在定义变量为整形时,只需指定为 int 型即可。

(2)在声明类型的同时定义变量

例如:

struct student

{

int num;

char name;

char sex;

int age;

float score;

char addr;

}student1, student2;

它的作用与第一种方法相同,即定义了两个 struct student 类型的变量 student1, student2 这种形式的定义的一般形式为

struct 结构体名

{

成员表列

}变量名表列;

(3)直接定义结构类型变量

其一般形式为

struct

{

成员表列

}变量名表列;

即不出现结构体名。

关于结构体类型,有几点要说明:

a. 类型与变量是不同的概念,不是混同,只能对变量赋值,存取或运算,而不能对一个类型赋值,存取或运算。在编译时,对类型是不分配空间的,只对变量分配空间。

b. 对结构体中的成员(即 域)可以单元使用,它的作用与地位相当于普通变量,

c. 成员也可以是一个结构体变量。

如:

struct date // 声明一个结构体类型

{

int month;

int day;

int year;

}

struct student

{

int num;

char name;

char sex;

int age;

struct date birthday;

char addr;

}student1, student2;

先声明一个 struct date 类型,它代表 日期 包括3个成员 month, day, year。然后在声明 struct student 类型时,将成员 birthday 指定为 struct date 类型。

d. 成员名可以与程序中的变量名相同,二者不代表同一对象。

参考资料来源:百度百科-C语言

参考资料来源:百度百科-结构体类型


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


结构(struct)

结构是由基本数据类型构成的、并用一个标识符来命名的各种变量的组合。
结构中可以使用不同的数据类型。

结构说明和结构变量定义

在Turbo C中, 结构也是一种数据类型, 可以使用结构变量, 因此,  象其它 类型的变量一样, 在使用结构变量时要先对其定义。定义结构变量的一般格式为:

struct 结构名 

{

类型  变量名;

类型  变量名; 

...
} 结构变量;

结构名是结构的标识符不是变量名。  类型为第二节中所讲述的五种数据类型(整型、浮点型、字符型、指针型和 无值型)。

构成结构的每一个类型变量称为结构成员, 它象数组的元素一样, 但数组中 元素是以下标来访问的, 而结构是按变量名字来访问成员的。 下面举一个例子来说明怎样定义结构变量。

struct string

{

char name;

int age; 

char sex;

char depart;

float wage1, wage2, wage3, wage4, wage5;

} person;

这个例子定义了一个结构名为string的结构变量person,   如果省略变量名 person, 则变成对结构的说明。用已说明的结构名也可定义结构变量。这样定义 时上例变成: 

struct string

{

char name;

int age;

char sex;

char depart;

float wage1, wage2, wage3, wage4, wage5;

}; struct string person; 

如果需要定义多个具有相同形式的结构变量时用这种方法比较方便, 它先作 结构说明, 再用结构名来定义变量。 

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

struct

{

char name; 

int age;

char sex;

char depart;

float wage1, wage2, wage3, wage4, wage5; 

} Tianyr, Liuqi;

结构作为一种数据类型,  因此定义的结构变量或结构指针变量同样有局 部变量和全程变量, 视定义的位置而定。

结构变量名不是指向该结构的地址, 这与数组名的含义不同,  因此若需要求结构中第一个成员的首地址应该是&[结构变量名]。

扩展资料:

结构体变量可进行哪些运算

结构体变量不能相加、不能相减,也不能相互乘除,但结构体变量可以相互赋值。也就是说,可以将一个结构体变量赋给另一个结构体变量。但前提是这两个结构体变量的结构体类型必须相同。

结构体变量的引用方式决定了:

“结构体变量名”可以与“结构体成员名”同名。

“结构体变量名”可以与“结构体名”同名。

“两个结构体类型定义的结构体变量中的成员可以同名”。

就比如定义了一个结构体类型用于存放学生的信息,里面有成员“char name;”,那么如果又定义了一个结构体类型用于存放老师的信息,那么里面也可以有成员“char name;”

因为结构体成员在引用时,必须要使用“结构体变量名.成员名”的方式来引用,通过引用就可以区分它们,所以不会产生冲突,因此可以同名!

只要不冲突,都可以重名!但是两个结构体变量名就不可以重名了,因为无法区分它们,就会产生冲突。当然这里说的是在同一个作用域内,如果在一个函数中定义一个局部变量a,那么在另一个函数中当然也可以定义一个局部变量a。它们互不影响。


struct是什么意思在C语言程序中


结构类型定义和结构变量说明  在实际问题中,一组数据往往具有不同的数据类型。例如, 在学生登记表中,姓名应为字符型;学号可为整型或字符型; 年龄应为整型;性别应为字符型;成绩可为整型或实型。 显然不能用一个数组来存放这一组数据。 因为数组中各元素的类型和长度都必须一致,以便于编译系统处理。为了解决这个问题,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;
char father;
char mother;
}
Dobbin = {24, 17, “Dobbin“, “Trigger“, “Flossie“};
1.1定义结构类型和结构变量
可以将结构的声明和结构变量的声明分开。取代前面例子的语句如下:
struct
horse
{
int age;
int height;
char name;
char father;
char mother;
};
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;
char father;
char mother;
};
这个结构有两个整数成员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;
char father;
char mother;
}
My_first_horse;
使用这种方法的最大缺点是不能在其他语句中定义这个结构的其他实例。这个结构类型的所有变量必须在一行语句中定义。

c语言struct是什么意思


struct是C语言结构体类型的标识符。
结构体支持把一组变量整合起来形成一个大的变量,其定义形式为:
struct name{
type1 var1;
type2 var2;
...
typen varn;
};
定义中的varx称为结构体的成员变量,可以为任意变量形式。当定义这样的结构体后,struct name就成为一种自定义类型。
于是
struct student就是被命名为student的一个结构体类型名。

推荐阅读