在iar中同一个软件不同工程extern 对象在.h里面定义一个可以一个为什么不能声明16位和8位整形
时间: 2024-03-30 13:35:02 浏览: 65
STM8 IAR 位操作库 iostm8xxxx.h
在 IAR 中,不同工程间共享变量时,需要在 .h 文件中声明该变量,但是在声明时不能使用特定的整数类型(例如 uint8_t 或 uint16_t)。这是因为不同工程中使用的编译器可能存在差异,导致特定的整数类型在不同工程中的大小和表现方式不同,所以在声明时需要使用通用的整数类型,例如 int 或 unsigned int。
如果你在声明 extern 对象时使用了特定的整数类型,那么在不同工程中使用该变量时可能会导致编译错误或者运行错误。因此,在声明 extern 对象时,应该使用通用的整数类型,并根据需要在代码中进行类型转换。这样可以确保在不同工程中共享的变量能够正常工作。
阅读全文