1
一個結構,我想有這樣的功能的結構:如何創建一個「靜態」變量在C
結構
成員1(struct的每個實例都有這種自身價值)
靜態成員(每結構這股成員)
我我知道static關鍵字不會這樣做。 我的問題是,我該如何模仿這種行爲?
我可以創建一個指向全局變量的成員嗎?
有沒有其他更好的方法來做到這一點?
一個結構,我想有這樣的功能的結構:如何創建一個「靜態」變量在C
結構
成員1(struct的每個實例都有這種自身價值)
靜態成員(每結構這股成員)
我我知道static關鍵字不會這樣做。 我的問題是,我該如何模仿這種行爲?
我可以創建一個指向全局變量的成員嗎?
有沒有其他更好的方法來做到這一點?
與C++中可以有靜態數據成員的結構不同,C結構體沒有這樣的結構。
因爲這是任何人都可以使用一個共同的價值,只是聲明它作爲一個全球性的:
int my_struct_common_val = 42;
struct my_struct {
...
};
如果這是在一個頭文件中,那麼你將需要使用'extern int my_struct_common_val;'定義在一個'.c'文件中 –
如果該成員共同所有'structs'爲什麼把它作爲一員? –
我不確定你可以,它不是面向對象的。你不能在C中執行'struct :: static_member'。 – SomethingSomething
檢查這個線程:http://stackoverflow.com/questions/6013373/c-usage-of-static-within-a-struct – SomethingSomething