簡體   English   中英

錯誤:變量“數據庫”具有初始化程序,但類型不完整?

[英]Error: variable ‘database’ has initializer but incomplete type?

我有這個typedef結構和一個“構造函數”:

typedef struct database {
    char key;
    char value;
    struct database *next;
} Database;


Database db_createDb() {
    Database *db;
    db = malloc(sizeof(struct database));

    return *db;
}

我正在從主要功能進行呼叫:

int main(int argc, char *argv[]) {
    Database database = db_createDb();
}

為什么會出現錯誤“數據庫具有初始化程序但類型不完整”?

通過Database更改database ,並保留指針供以后使用:

Database * db_createDb() 
{
    Database *db;
    db = (Database *)malloc(sizeof(Database));

    return db;
}

int main(int argc, char *argv[])
{
    Database * database = db_createDb();

    ....
    free(database);

}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM