定義結構體和初始化的方法


初學結構體易混淆的知識點,現在整理一下,直接看代碼吧。

定義結構,一種是沒有重定義符typedef,聲明時都必須加struct關鍵字;(如方法1)
一種是直接在結構體后聲明變量名,可以直接用作變量。(如方法2、3)。
初始化結構,一種是先聲明,再初始化(如方法1)
       一種是在定義的后面聲明變量后直接初始化(如方法2、3)。


/*************定義結構體三種方法**************/
struct PersSon
{
    int age;
    char name[20];
}PersSon;//定義結構體 方法1,定義類型,聲明時必須加struct 


typedef struct PersSon1
{
    int age;
    char name[20];
}PersSon1;//重定義結構體 類型,聲明時不需加struct 


struct PersSon2
{
    int age;
    char name[20];
}s1,s2; //定義結構體 方法2,定義類型時,定義變量s1、s2 

struct 
{
    int age;
    char name[20];
}s3,s4; //定義結構體 方法3,匿名定義類型時,定義變量s3、s4


/************初始化結構體的三種方法***************/ 
struct PersSon
{
    int age;
    char name[20];
}PersSon;//定義結構體 方法1,定義類型,聲明時必須加struct 

// 初始化結構體變量 方法1: struct PersSon p={16,"xiaodu"};

typedef struct PersSon1
{
    int age;
    char name[20];
}PersSon1;//重定義結構體 類型,聲明時不需加struct   

// 初始化結構體變量 方法1: PersSon1 p1={17,"xiaoli"};    

struct PersSon2
{
    int age;
    char name[20];
}s1={12,"xiaoming"},s2={13,"xiaohong"}; //初始化結構體變量 方法2,定義類型時,定義變量並初始化s1、s2 

struct 
{
    int age;
    char name[20];
}s3={14,"xiaoliang"},s4={15,"xiaoyang"}; //初始化結構體變量  方法3,匿名定義類型時,定義變量並初始化s3、s4

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM