gpt4 book ai didi

c - gcc 编译错误 ‘sizeof’ 对不完整类型 ‘struct LadoSt’ 的无效应用

转载 作者:太空宇宙 更新时间:2023-11-04 01:30:22 24 4
gpt4 key购买 nike

我正在为我的大学制作一个项目并使用 MakeFile 编译我的文件我遇到了问题,我有 5 个文件:api.c api.h datastruct.c datastruct.h main.c主要是我有这个函数调用:DovahkiinP new = NuevoDovahkiin();NuevoDovahkiin() 函数在 api.c 中定义,也是 DovahkiinP 指向的结构体 DovahkiinSt

函数 NuevoDovahkiin() 在 api.c 中定义如下:

DovahkiinP NuevoDovahkiin(){
DovahkiinP new_dovahkiin = NULL;
new_dovahkiin = calloc(1, sizeof(struct DovahkiinSt)); //Here is the problem
if(new_dovahkiin != NULL){
new_dovahkiin->root = NULL;
new_dovahkiin->source = NULL;
new_dovahkiin->sink = NULL;
new_dovahkiin->tempflux = 0;
}
return (new_dovahkiin);
}

在api.h中定义了结构体DovahkiinSt:

 typedef struct _DovahkiinSt_t {
vertex root;
vertex source;
vertex sink;
u64 tempflux;
}DovahkiinSt;
typedef DovahkiinSt *DovahkiinP;

在 api.c 和 main.c 中我都有#include "api.h"我不明白 sizeof(struct DovahkiinSt) 有什么问题

最佳答案

使用 sizeof(DovahkiinSt)sizeof(struct _DovahkiinSt_t)

sizeof(struct DovahkiinSt) 没有意义,因为 DovahkiinSt 只是 struct _DovahkiinSt_t 的不同名称。

关于c - gcc 编译错误 ‘sizeof’ 对不完整类型 ‘struct LadoSt’ 的无效应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23795674/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com