看来CodeVisionAVR使用的编译器以我不了解的方式处理typedef。

此行代码将引发错误:

typedef uint64_t offset_t;

错误:缺少“;”

包含了stdint.h,因此定义了uint64_t。

有人知道这是怎么回事吗?

其他编译器似乎对该行没有问题。应当合法c。

最佳答案

我设法看了看CodevisionAVR stdint.h,它不包含uint64_t。如果将其更改为uint32_t,它将起作用。如果需要uint64_t,则必须手动将其添加到头文件中。

关于compiler-errors - CodevisionAVR类型定义,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29223170/

10-12 05:26