当我在arduino上编译代码时,出现以下错误:
由于对齐丢失了8个字节。为了避免这种损失,请确保tensor_arena对齐16个字节。
constexpr int tensorArenaSize = 8 * 1024;
byte tensorArena[tensorArenaSize];
有人可以帮助我解决此问题吗?
答案 0 :(得分:0)
出于我不知道的原因,编译器要确保大字节数组是16字节对齐的。由于已在包含的两行上面声明了变量,因此需要将“大数组”“向前”移动8个字节,以使其开始于16字节边界上的地址。要解决该错误(对我来说,这只是一个警告),或者在大型数组之前添加一个虚拟的8字节变量,或者将价值8字节的变量从大型数组之前移至大型数组之前或之后。在第一种情况下,您只会丢失8个字节的可变空间。