C语言指针问题

2025-03-10 03:45:30
推荐回答(1个)
回答1:

内存对齐的缘故。
p_buf 作为一个指针,它的值是内存的某个字节的地址。
如果想要把 p_buf 强制转换成一个 unsigned int*类型的指针,
需要满足一个必要条件,就是 p_buf 的值必须能够被4整除。(之所以是4,是因为 unsigned int 是要占4个字节的)。