zoukankan      html  css  js  c++  java
  • c语言结构体3之结构体嵌套

    注意:

    1结构体内部再次定义一个结构体 但是没有创建结构体的实例
      也就是说再次定义的结构体内部的变量会被当做母结构体的成员变量

     1 struct tianchao
     2 {
     3     int data;
     4     char name[24];
     5     struct beijing//结构体内部再次定义一个结构体 但是没有创建结构体的实例
     6                     //也就是说再次定义的结构体内部的变量会被当做母结构体的成员变量
     7     {
     8         char str[100];
     9         int num;
    10     };
    11 };
    12 
    13 void mainww()
    14 {
    15     struct tianchao t1;
    16     //t1.这里按照道理是可以有四个变量 但是在此不可以 应该是编译器的问题
    17     
    18     //是没有问题
    19     /*t1.data = 100;
    20     t1.num=66;
    21     sprintf(t1.name,"goa");
    22     sprintf(t1.str,"gob");*/
    23 }
    24 
    25 struct tianchao
    26 {
    27     int data;
    28     char name[24];
    29     struct beijingA结构体 
    30                     
    31     {
    32         char str[100];
    33         int num;
    34     }b1;//内部定义的第一种方式
    35     struct beijingA结构体 b2;//内部定义的第二种方式
    36 };
    37 
    38 void main()
    39 {}
     1 //struct china
     2 //{
     3 //    int data;
     4 //    char name[100];
     5 //    struct guiyang
     6 //    {
     7 //        char str[100];
     8 //        int num;
     9 //    }a1;//不清楚为什么必须加上a1 编译器才识别
    10 //};
    11 //void main()
    12 //{
    13 //    struct china c1;
    14 //    c1.a1.num = 200;
    15 //    sprintf(c1.a1.str,"ad");
    16 //    printf("%d,%s",c1.a1.num,c1.a1.str);
    17 //
    18 //    getchar();
    19 //}
    20 //方式二
    21 struct china
    22 {
    23     int data;
    24     char name[100];
    25     //给结构体内部在此定义一个结构体,创建结构体变量,这个变量会直接当作成员
    26     //但是没有创建结构体的实例
    27     //再次定义的结构体内部的变量 会被当作母结构体的成员变量
    28     struct guiyang
    29     {
    30         char str[100];
    31         int num;
    32     }a1;
    33     struct guiyang b1;
    34 };
    35 void main()
    36 {
    37     struct china c1;
    38     c1.b1.num = 200;
    39     sprintf(c1.b1.str,"ad");
    40     printf("%d,%s",c1.b1.num,c1.b1.str);
    41 
    42     getchar();
    43 }
  • 相关阅读:
    滚动计算基础知识
    Javascript继承
    提取URL字符串的搜索字符串中的参数
    C++编程练习(13)----“排序算法 之 堆排序“
    常见网络端口 和 常见网络协议
    TCP协议中的三次握手和四次挥手(图解)
    C++编程练习(14)-------“单例模式”的实现
    编程练习------C/C++分别实现字符串与整数的转换
    IPv4地址学习总结
    C/C++中的联合体
  • 原文地址:https://www.cnblogs.com/lanjianhappy/p/6011491.html
Copyright © 2011-2022 走看看