小螞蟻學習C語言(23)——C語言結構體——結構體的基本介紹

結構體spa

    爲何須要結構體?.net

        爲了表示一些複雜的事務,而普通的基本類型變量沒法知足實際要求指針

    什麼叫結構體?code

        把一些基本類型數據結合在一塊兒造成一個新的符合數據類型,這個叫作結構體orm

    如何定義結構體?blog

        有三種方式:事務

        (第一種方式是值得推薦的)ci

struct student
{
    int age;
    float score;
    int sex;
};

        第二種,能夠直接寫上變量名稱(不經常使用get

struct student1
{
    int age;
    float score;
    int sex;
}allen;

        第三種,能夠省略掉一個類型名稱,加上一個變量名(這種不經常使用博客

struct
{
    int age;
    float score;
    int sex;    
}frank;

    怎麼去使用結構體變量?

        賦值和初始化

struct student member = {24, 66.6, 1};

        如何取出結構體變量中的每個成員

            1,結構體變量名.成員名

            2,指針變量名->成員名 (第二種方式更經常使用

                    1    pst->age 計算機內部會被轉化成 (*pst).age  沒有道理可講,就這規定。

                    2    因此, pst->age  等價於 (*pst).age  也等價與 st.age 

                    3    之因此知道 pst->age 等價於 st.age,是由於 pst -》age 是被轉化成了(*pst).age來執行。

                    4    pst->age 的含義:pst所指向的那個結構體變量中的age這個成員

小案例:

# include <stdio.h>

struct student
{
    int age;
    float score;
    int sex;
};//這裏的分號是不能夠少的,第一次寫的時候坑死了

struct student1
{
    int age;
    float score;
    int sex;
}allen;

struct
{
    int age;
    float score;
    int sex;    
}frank;

int main(void)
{
    struct student member = {24, 66.6, 1};
    
    //haha = {24 , 66.6, 0};
    //這樣寫是錯的,建立變量的時候能夠這樣賦值,建立以後,就須要單個賦值了
    
    allen.age = 24;
    allen.score =    66.6;
    frank.sex = 1;
    
    printf("%d \n",member.age);
    printf("%f \n",allen.score);
    printf("%d \n",frank.sex);
    
    return 0;
}
/*
    VC6.0++上運行的結果:
    =====================================
    24
    66.599998    //前面記錄過,浮點型是不能很是準確的記錄一個小數的。
    1
    =====================================
    總結:
        定義的同時能夠總體賦值
        若是定義完以後,則只能單個賦值了
*/


    學PHP的小螞蟻 博客 http://my.oschina.net/woshixiaomayi/blog

相關文章
相關標籤/搜索