我正在尝试导入arduino库到Code Composer Studio IDE。我成功导入它,但我得到一些有关size_t的错误不是一种类型。我知道它已经在stddef.h头文件中定义了。但我不知道必须采取什么措施才能消除此错误。确切地说,定义它的不同方式是什么以及包含哪些头文件?所以如果有人能帮上忙,那就太好了。Code Composer Studio的size_t的定义
感谢
我正在尝试导入arduino库到Code Composer Studio IDE。我成功导入它,但我得到一些有关size_t的错误不是一种类型。我知道它已经在stddef.h头文件中定义了。但我不知道必须采取什么措施才能消除此错误。确切地说,定义它的不同方式是什么以及包含哪些头文件?所以如果有人能帮上忙,那就太好了。Code Composer Studio的size_t的定义
感谢
从您提供的信息很少,这是很难说是什么问题。不过,我可能会给你一些猜测:
size_t
是平台可靠的类型。它是由sizeof
运算符返回的类型。
所以当你使用Arduino的时候,它可能有另一个定义或者它与你的编译器定义的定义有约定。我GOOGLE了这个问题,我发现这两个解决方案:
Arduino.h
在您正在使用的CPP不只是标题。physfs.h
,添加此#include <stdlib.h>
不管怎样,你真的想要直接使用size_t
?如果你正在寻找unsigned long
,你可以直接使用它.. size_t是一个有点模糊的类型。例如,对于Windows
,Intel
,它将具有不同的大小,对于x86
和x64
这可能会导致一些问题,特别是如果您正在对其执行某种级别的操作。
编辑:如果你正在使用size_t为正确的目的,它是一个对象的大小,你应该保持使用它。我的笔记就是如果你使用size_t,每当需要一个unsigned long。
'size_t'是用于表示对象大小的正确大小。 *假设*在不同的平台上有不同的定义。 –
@凯瑟汤普森absolutly权利。但是我担心OP会在需要使用无符号长整型时使用它。 –
定义它有哪些不同的方法?我已经在Code Composer Studio和代码块中检查过它。它显示了同样的错误。 –
把一些代码请 –
我的意思是你要求我把我的或size_t定义代码的完整代码。因为就主要代码而言它没有错误。唯一的错误是从arduino库 –
把完整的错误信息比 –