Linux c基礎之(五) 結構體

1.   結構體

(1)結構定義:是一種構造類型,它是由若干成員組成的。每一個成員可以是一個基本數據類型或者又是一個構造類型

(2)結構體聲明:

struct 結構名                            

成員列表;

};

(3)聲明與使用實例

 

格式1:

#include "stdafx.h"

struct in

{

int a;

char *b;

 

};

 

int _tmain(int argc,_TCHAR* argv[])

{

    struct in i;

    i.a=5;

    i.b="fga";

    printf("%d,%s\n",i.a ,i.b);

    struct in i1;

    i1.a=6;

    i1.b="gdf";

    printf("%d,%s\n",i1.a ,i1.b);

    struct ini3={9,"林彥俊"};

    printf("%d,%s\n",i3.a ,i3.b);

    return 0;

}

格式2:

#include "stdafx.h"

struct in

{

int a;

char *b;

} i,i1;

 

int _tmain(int argc,_TCHAR* argv[])

{

    i.a=5;

    i.b="fga";

printf("%d,%s\n",i.a ,i.b);

    i1.a=6;

    i1.b="gdf";

    printf("%d,%s\n",i1.a ,i1.b);

    struct ini3={9,"林彥俊"};

    printf("%d,%s\n",i3.a ,i3.b);

    return 0;

}

格式3:

#include "stdafx.h"

struct

{

int a;

char *b;

} i,i1;

 

int _tmain(int argc,_TCHAR* argv[])

{

    i.a=5;

    i.b="fga";

printf("%d,%s\n",i.a ,i.b);

    i1.a=6;

    i1.b="gdf";

    printf("%d,%s\n",i1.a ,i1.b);

  

    return 0;

}

2. 結構體裏定義函數並調用實例

 #include "stdafx.h"

struct in

{

int a;

char *b;

 

void show()

{

printf("%s的學號是:%d\n",b,a);

}

} i,i1;

 

int _tmain(int argc,_TCHAR* argv[])

{

   

    i.a=5;

    i.b="fga";

    i.show();

    i1.a=6;

    i1.b="gdf";

    i1.show();

    struct ini3={9,"林彥俊"};

    i3.show();

    return 0;

}

3. 嵌套結構體

結構體的成員可以是另一個結構體,即結構體可以嵌套定義。

例如:計算在座標中一條直線長度的平方

  #include "stdafx.h"

struct stu

{

int a;

int b;

};

struct stu1

{

struct stu a1;

struct stu b1;

void show()

{

    printf("距離的平方爲%d",(b1.a-a1.a)*(b1.a-a1.a)+(b1.b-a1.b)*(b1.b-a1.b));

}

};

struct complx

{

 int real;

 int im;

 

};

 

int _tmain(int argc,_TCHAR* argv[])

{

 

    struct stu1stu1;

    stu1.a1.a=10;

    stu1.a1.b=10;

    stu1.b1.a=20;

    stu1.b1.b=20;

    stu1.show();

    return 0;

}

 

 

 

 

 

 

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章