我是第一天使用 C,它与 C# 有点不同。我试图让一个函数返回一个结构,但我的代码没有发现任何问题,但我一直收到错误“不兼容的类型:结构和标量”。
在我的 main.c 中我做了这个调用
struct Position pos = GetPosition();
在我的其他源文件中,我定义了函数:
struct Position getPosition(){
struct Position pos;
pos.latitude = 56;
pos.longitude = 18;
pos.time = 456;
return pos;
}
我在头文件中定义了函数,并将其包含在我的 main.c 文件中。 我做错了什么?
最佳答案
这可能是因为您正在调用 GetPosition
并且您已经声明了 getPosition
(检查大小写)。
因为它没有看到原型(prototype),所以编译器假装有一个返回 int
的函数 GetPosition
。其他一切都是正确的。
关于c - 不兼容类型 : structure and scalar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23586199/