我无法对编译时错误进行排序。我正在编译 C 项目。我的 main.c
文件有一个 #include,它可以在其中获取我在项目中使用的结构的定义。关键是每次我尝试编译我的代码时都会出现错误
struct Mystruct* ps = (struct Mystruct* )malloc( sizeof(Mystruct) ); // I have this
// error at compile time
error: 'Mystruct' undeclared (first use in this function)
为什么编译器无法读取结构定义? 包含文件夹设置正确
谢谢
最佳答案
听起来您需要在表达式中使用 sizeof(struct Mystruct)
或在某处使用 typedef struct Mystruct Mystruct
。在 C 中,结构有自己的命名空间。
关于c - 错误 : 'Mystruct' undeclared (first use in this function),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4994318/