<menu id="ycqsw"></menu><nav id="ycqsw"><code id="ycqsw"></code></nav>
<dd id="ycqsw"><menu id="ycqsw"></menu></dd>
  • <nav id="ycqsw"></nav>
    <menu id="ycqsw"><strong id="ycqsw"></strong></menu>
    <xmp id="ycqsw"><nav id="ycqsw"></nav>
  • c語言高級代碼(c語言入門自學零基礎)


    1、C語言中結構體

    結構體簡介

    -在實際的處理對象中,有許多信息是由多個不同類型數組合一起進行描述,而且這些不同類型
    的數據是互相聯系組成了一個有機的整體。此時,就要用到一種新的構造類型數據--結構體
    (srtucture),
    簡稱結構
    
    -結構體的使用為處理復雜的數據結構(如動態數據結構等),提供了有效的手段,且他們為函數
    間傳遞不同類型的數據提供了方便。
    嵌入式開發-C語言高級編程-結構體的基本使用

    結構體概念

    -結構體是用戶自定義的新數據類型,有點像高級語言里的對像一樣
    
    -例如:定義一個人的結構體,那么這個結構體就有 身高、年齡、性別等
    
    定義一個結構體類型的一般形式為
    
    struct 結構名
    {
        
        數據類型  成員名1;
        
        ...
        
        數據類型  成員名n;
    }
    例如:一個人的結構體
    #include <stdio.h>
    #include <string.h>
    #define N 10
    struct person{
        int age;
        int sex;
        char name[N];
    } p ;
    int main(){
        struct person p1,p2;
        p1.age =25;
        p1.sex =1;
        strcpy(p1.name,"copy");
        printf("%d %d,%sn",p1.age,p1.sex,p1.name);
        return 0;
    }

    結構體大小

    大?。阂粋€結構體變量占用內存的實際大小,也能用sizeof求出
    
    sizeof(運算量)
    
    例如:
    
    sizeof(person p1) sizeof(p2)

    2、C語言結構體數組

    結構體數組:是指數組中的每個元bai素都是一個結構體
    嵌入式開發-C語言高級編程-結構體的基本使用

    三種方式

    一、先定義結構體類型,再定義結構體數組
    
    struct 結構體名
    {
        成員表表;
    };
    struct 結構體名
    
    例如:
    struct person
    {
        int age;
        ing sex;
        char name[10];
    };
    
    sturct person p[3];
    
    二、在定義結構體同時定義數組
    
      struct 結構體名
    {
        成員表表;
    } 數組名[元素個數];
    
    例如:
     {
        int age;
        ing sex;
        char name[10];
    }p[3];
    
    三、直接定義結構體數組
    
     struct 
    {
        成員表表;
    };
    
    例如:
     {
        int age;
        ing sex;
        char name[10];
     }p[3];

    #include <stdio.h>
    #include <string.h>
    #define N 10
    struct person{
        int age;
        int sex;
        char name[N];
    } p[2] ;
    int main(){
    
        p[1].age =10;
        p[1].sex =1;
        strcpy(p[1].name,"copy");
        printf("%d %d,%sn",p[1].age,p[1].sex,p[1].name);
        return 0;
    }

    3、結構體指針

    可以設定一個指針變量用來指向一個結構體變量。些時該指針變量的值是結構體變量的起始地址
    ,該指針稱為結構體指針
    
    一般形式:
        struct 結構體名 *結構體指針名
        
    注:其中的結構體名必須是已經定義的
    
    #include <stdio.h>
    #include <string.h>
    #define N 10
    struct person{
        int age;
        int sex;
        char name[N];
    } p[2] ;
    int main(){
        p[1].age =10;
        p[1].sex =1;
        strcpy(p[1].name,"copy");
    
        struct person * p1;
        p1 =&p[1];
        
        printf("%d %d,%sn",p[1].age,p[1].sex,p[1].name);
        printf("%d %d,%sn",p1->age,(*p1).sex,p1->name);
        return 0;
    }
    
    使用 指針->屬性  或  (*<指針名>).屬性  取值

    版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

    發表評論

    登錄后才能評論
    国产精品区一区二区免费