内存分配 - Arduino



我是这个低级东西的新手。我目前正在学习arduino。我目前正在使用Arduino Mega 2560,在我们的课程中,我们正在练习内存管理。我是 pc 内存管理专家,但不知何故,我在 arduino 中遇到了疯狂的问题。例如:

arduino 有 8192B,我试图用 uint_16 溢出它,所以我做了一个 8192/16 的数组,即 512。 所以我做了

uint16_t A[512+1];

好吧,我预计这会导致溢出。

我的概念有什么问题?

您似乎将位与字节混淆了。

假设 Arduino 上的 sizeof (uint16_t) 是 2,则 513 个 16 位整数的数组仅使用 1026 个字节,这很容易适应。

同样在Arduino中,当内存已满时,您不会收到任何错误或警告。微控制器重新启动。

最新更新