default value for struct member in C

后端 未结 16 2228
-上瘾入骨i
-上瘾入骨i 2020-11-27 10:53

Is it possible to set default values for some struct member? I tried the following but, it\'d cause syntax error:

typedef struct
{
  int flag = 3;
} MyStruct         


        
16条回答
  •  無奈伤痛
    2020-11-27 11:27

    You can create a function for it:

    typedef struct {
        int id;
        char name;
    } employee;
    
    void set_iv(employee *em);
    
    int main(){
        employee em0; set_iv(&em0);
    }
    
    void set_iv(employee *em){
        (*em).id = 0;
        (*em).name = "none";
    }
    

提交回复
热议问题