私の関数では、メモリを割り当て、messagePacket と呼ばれる構造体を埋めます
struct messagePacket *packet = malloc(sizeof(struct messagePacket));
//fill
ポインターを (uint8_t *) としてキャストしようとすると、gcc は次のような警告をスローします。
sendBuf(..., (uint8_t *)packet);
私は次のことをうまく行うことができました。このアプローチを回避策として使用できることを理解しています。私がここにいるのは、回避するよりも、これから学びたいからです。
uint8_t *buf = malloc(sizeof(struct messagePacket));
struct messagePacket のサイズ = 1209 B. 私の推測では、メモリのチャンクが非常に大きく、16 バイト アドレスなどの上位メモリ アドレスに格納されるのではないでしょうか? しかし、それは同じサイズの uint8_t * を malloc できるという事実には適合しません。