我是一个 64 位的进程,我的 int
大小是 8 个字节。
我正在引用一个编译为 32 位的 dll。
这个 dll 有一个接受 int
参数的函数。
会发生什么?
我要将 8 字节
发送到 4 字节
“容器”?
最佳答案
不,在 64 位/C# 中,int
仍然是 4 个字节。
在 C# 中,int
始终 只是 global::System.Int32
的别名
将改变的是引用 大小和指针 大小,但无论如何这些都是由 IL 抽象出来的 - 无需更改。不过请注意,CLI 只会是 32 位 xor (nand?) 64 位。您可能需要其中之一作为“任何 CPU”。
关于c# - 32/64 位进程的 int 行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10992182/