ошибка времени выполнения: загрузка смещенного адреса - PullRequest
0 голосов
/ 06 августа 2020

Я недавно столкнулся с этой ошибкой. Полная ошибка следующая.

external/libgit2/src/hash/sha1/sha1dc/sha1.c:438:2: runtime error: load of misaligned address 0x6110000205f5 for type 'const uint32_t', which requires 4 byte alignment
0x6110000205f5: note: pointer points here
 65 6e 74 20 64 35 63  30 62 31 35 64 61 30 36  33 38 65 35 31 61 64 31  38 66 37 64 35 37 31 37  36

Я использую библиотеку libgit2, и ошибка времени выполнения возникает в коде библиотеки, поэтому я не публикую код. Дело в том, что программа продолжает нормально работать. Что именно означает эта ошибка? и как его вообще исправить?

1 Ответ

2 голосов
/ 06 августа 2020

0x6110000205f5 не выровненный адрес. (Это выравнивание от одного байта до 4 байтов). Это произойдет, если вы передадите в код невыровненный указатель.

Вы можете либо вручную, либо использовать функции из семейства memalign или для windows _aligned_allo c

...