指针差异类型(减号)

use*_*778 1 c types pointers difference

我需要知道两个子结构之间的内存距离

(&my_type.a - &my_tape.b.c)
Run Code Online (Sandbox Code Playgroud)

结果的类型是什么?我需要把它投射出来(signed int),所以显然它是别的东西.

Pot*_*ter 6

根据C11标准,§6.5.6/ 9,

当两个指针被减去时......结果的大小是实现定义的,并且它的类型(有符号整数类型)ptrdiff_t<stddef.h>头文件中定义.