c语言中结构体的优点

来源:百度知道 编辑:UC知道 时间:2024/06/28 06:02:24
C语言中结构体有哪些优点?
相同结构的结构体变量是可以相互赋值的。这句话什么意思?相同结构体中的变量不是都是相同的吗?相互赋值有什么意义?

简单的来说,结构体就是一个可以包含不同数据类型的一个结构,它是一种可以自己定义的数据类型。首先结构体可以在一个结构中声明不同的数据类型,第二相同结构的结构体变量是可以相互赋值的,而数组是做不到的,因为数组是单一数据类型的数据集合,它本身不是数据类型(而结构体是),数组名称是常量指针,所以不可以做为左值进行运算,所以数组之间就不能通过数组名称相互复制了,即使数据类型和数组大小完全相同。
第三,节省内存空间
第四,高效率。

将不同类型的数据组合成一个有机的整体,便于引用。
结构体由若干个不同类型的数据项组成,当需要把一些相关信息组合在一起的时候,采用结构体这种类型就很方便。

举一个例子,在多线程编程中,主线程只能往每个子线程传一个参数,为(void*)类型,这时如果我们想传递多个参数,怎么办呢,就可以用一个结构体来解决。