zoukankan      html  css  js  c++  java
  • 学点 C 语言(26): 数据类型 结构的更多可能


    1. 包含数组的结构:
    #include <stdio.h>
    
    int main(void)
    {
        struct Rec {
            int x[3];
            int y;
        } r1;
    
        r1.x[0] = 11; r1.x[1] = 22; r1.x[2] = 33;
        r1.y = 99;
    
        printf("%d,%d,%d,%d", r1.x[0], r1.x[1], r1.x[2], r1.y);       
        
        getchar();
        return 0;
    }
    

    2. 结构中的结构:
    #include <stdio.h>
    
    int main(void)
    {
        struct Rec1 {
            int x,y,z;    
        };
    
        struct Rec2 {
            int ID;
            struct Rec1 num;
        } R;
    
        R.ID = 9;
        R.num.x = 1;
        R.num.y = 2;
        R.num.z = 3;
    
        printf("%d,%d,%d,%d", R.ID, R.num.x, R.num.y, R.num.z);       
        
        getchar();
        return 0;
    }
    
    #include <stdio.h>
    
    int main(void)
    {
        struct Rec {
            int ID;
            struct {
                int x;
                int y;
                int z;    
            } num;
        } R;
    
        R.ID = 9;
        R.num.x = 1;
        R.num.y = 2;
        R.num.z = 3;
    
        printf("%d,%d,%d,%d", R.ID, R.num.x, R.num.y, R.num.z);       
        
        getchar();
        return 0;
    }
    

    3. 链表(结构中的指针):
    #include <stdio.h>
    
    int main(void)
    {
        struct Rec {
            int x;
            int y;
            struct Rec *next;  /* 结构中的指针, 这是建立链表的基础 */
        } *p=NULL, *pFirst=NULL, *pPrec=NULL;
    
        /* 建立链表 */
        int i;
        for (i = 0; i < 10; i++) {
            p = (struct Rec *)malloc(sizeof(struct Rec));
            p->x = i;
            p->y = i*i;
            p->next = NULL;
            
            if (!pFirst) {
                pFirst = p;
                pPrec = p;
            } else {
                pPrec->next = p;
                pPrec = p;
            }
        }
    
        /* 遍历链表 */
        p = pFirst;
        while (p) {
            printf("%d, %d\n", p->x, p->y);
            p = p->next;
        }
    
        /* 释放链表 */
        p = pFirst;
        while (p) {
            pPrec = p;
            p = p->next;
            free(pPrec);
        }     
    
        getchar();
        return 0;
    }
    

  • 相关阅读:
    关于android4.3 Intel X86 Atom System Image的下载
    dp和px以及sp
    Android项目结构分析
    Performance Testing
    Modifying a Request or Response
    Log Sessions to Local Database
    The Web Sessions List
    Using QuickExec
    AutoResponder Reference
    Fiddler Session标志
  • 原文地址:https://www.cnblogs.com/del/p/1343309.html
Copyright © 2011-2022 走看看