1
我想創建一個trie,我需要所有的布爾等於false,除非另有規定。然而,這種同時成員初始化和定義的格式只在C++ 11中有效......顯然,有沒有辦法在c99中做到這一點?同時struct成員初始化和定義在c99
typedef struct
{
bool booleans[28] = { false };
struct node *next[27];
}node;
我想創建一個trie,我需要所有的布爾等於false,除非另有規定。然而,這種同時成員初始化和定義的格式只在C++ 11中有效......顯然,有沒有辦法在c99中做到這一點?同時struct成員初始化和定義在c99
typedef struct
{
bool booleans[28] = { false };
struct node *next[27];
}node;
在C中,你不能在類型聲明中初始化。
但是,默認初始化爲所有未明確列出的成員提供0
,這與您的案例中的false
是一樣的。
所以申報node
沒有初始化,然後用類似
node X = { 0 };
沒有聲明變量,有沒有辦法specificaly爲此在C99。 – AnT