中断系统调用posix_memalign

我正在使用posix_memalign获得此exception。 知道为什么我们得到它吗?

提前致谢。

中断的系统调用通常是系统调用中断的结​​果。 换句话说,该过程在呼叫执行时接收信号。

问题得到解决:问题是对齐边界应该是2和sizeof(void *)的倍数。 所以如果posinter size是4个字节,那么第二个参数应该是4,8,16等。而不是我把它作为2的倍数,因此它崩溃了。

 Wrong usage: crashes posix_memalign(&addr, 2, 8); Correct usage: posix_memalign(&addr, 4, 8); // Second argument multiple of void* and 2