Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我目前正在使用 Atmel 板(SAM4C ARM Cortex-M4)进行项目,我注意到当我设置“陷阱未对齐字访问”位时,我总是遇到“未对齐访问使用错误”。
经过一番调查,我意识到 malloc 返回未对齐的内存块。所以,我想知道是否有一种方法可以配置 malloc 以便它在对齐指针处分配内存?我知道 memalign 可以解决问题,但是由于我使用 malloc 的地方已经太多了,如果我可以继续使用 malloc 会更简单。
我正在使用库“newLib”。
ISO 规范声明malloc()总是返回一个内存地址,该地址适合指向任何适合指定大小的对象的指针。实际上,这通常意味着它应该在 8 字节边界上对齐。
malloc()
如果不是,那么它是一个不符合标准的实现,应该被打屁股。
话虽如此,如果 newLib 不符合要求,我会非常非常非常惊讶。