解説ありがとうございます
32bit環境は一律にILP32だけど64bitになるとIL32P64など整数型が4byteのままということもあるわけで
つまり64bit環境だとポインタを整数型で受けるにはint64_tの宣言が必要になるんですね