本文将帮助您学习c语言结构嵌套。 包括C语言结构嵌套的使用方法、操作技巧、实例演示、注意事项,有一定的学习价值。 请作为参考。
C语言嵌套结构表示一个结构可以使用另一个结构作为成员。 用c语言定义结构嵌套有以下两种方法。
通过独立的结构
通过嵌入式结构
1 .独立结构
可以创建两个结构,但主结构必须使用从属于其他结构的结构作为成员。 让我们来看看嵌套结构的代码。
结构日期
{
int dd;
int mm;
int yyyy;
(;
结构员工
{
int id;
char name[20];
struct Date doj; //嵌套结构:用于存储日期的Date
(}emp1;
如上所示,doj (加入日期)是Date类型的变量。 其中doj用作Employee结构的成员。 Date结构可以用于其他结构。
2 .嵌入式结构
我们可以在结构体内定义结构体。 它需要比第一种方法更少的代码。 不能在其他结构中使用。
结构员工
{
int id;
char name[20];
结构日期
{
int dd;
int mm;
int yyyy;
(DOJ;
(}emp1;
访问嵌套结构
可以从outer _ structure.nested _ structure.member访问嵌套结构的成员,如下所示:
e1.doj.dd
e1.doj.mm
e1.doj.yyyy
嵌套结构示例
让我们看一下C语言中嵌套结构的简单示例。 创建源代码文件nested-structure.c。 代码如下-
#包含
#包含
结构员工
{
int id;
char name[20];
结构日期
{
int dd;
int mm;
int yyyy;
(DOJ;
(E1;
int main () )
{
//storing employee information
e1.id=1001;
strcpy(E1.name,' Maxsu ' ); //copying string into char array
e1.doj.dd=12;
e1.doj.mm=11;
e1.doj.yyyy=2018;
//printingfirstemployeenformation
employeeid : % dn ),e1.id );
employee name : % sn ),e1.name );
employeedateofjoining (DD/mm/yyyy ) :%d/%dn )、e1.doj.dd、e1.doj.mm、e1.doj.dd.mm
返回0;
}
运行上面的示例代码将产生以下结果-
employee id : 1001
employee name : Maxsu
employeedateofjoining (DD/mm/yyyy ) : 12/11/2018