c語(yǔ)言public在結(jié)構(gòu)體中的應(yīng)用

小樊
92
2024-07-18 03:51:44

在C語(yǔ)言中,關(guān)鍵字public并不直接用于結(jié)構(gòu)體中。在C語(yǔ)言中,結(jié)構(gòu)體的成員默認(rèn)是公有的(即可在外部訪問),所以不需要使用public關(guān)鍵字來聲明結(jié)構(gòu)體的成員。

如果希望將結(jié)構(gòu)體的成員設(shè)置為私有的(即只能在結(jié)構(gòu)體內(nèi)部訪問),可以使用以下方法實(shí)現(xiàn):

#include <stdio.h>

struct Person {
    char name[50];
    int age;
    float height;
    
    // 私有成員
    int private_data;
};

int main() {
    struct Person person1;
    
    // 訪問公有成員
    strcpy(person1.name, "Alice");
    person1.age = 25;
    person1.height = 1.75;
    
    // 編譯時(shí)會(huì)報(bào)錯(cuò),private_data是私有成員
    //person1.private_data = 123;
    
    return 0;
}

在上面的代碼中,private_data被定義為Person結(jié)構(gòu)體的一個(gè)私有成員,只能在結(jié)構(gòu)體內(nèi)部訪問,外部無法直接訪問。

1