lp变量的长度是多少?

时间:2017-03-07 21:13:51

标签: c++ windows

我是C#开发人员,所以为了解决这个问题,我尝试了MSDN和StackOverflow。不幸的是,他们似乎在这里发生冲突MSDN表明它将取决于体系结构 - 64位进程为64位,32位进程为32位。另一方面,SO this answer描述SYSTEM_INFO似乎表明它总是32位,因为MinimumApplicationAddressMaximumApplicationAddress被定义为UInt32 s,即使该问题标有 win-universal-app ,通常是x64而不是x86。 (是的,我知道这并不意味着每个进程都是64位。)

2 个答案:

答案 0 :(得分:1)

LP是Microsoft前缀表示法(称为匈牙利表示法),表示指针。最初它是“长指针”的缩写,这在DOS编程中是有意义的。对于32位代码,它是32位,对于64位代码,它是64位。

答案 1 :(得分:0)

如果你正在谈论一个uint32,保证是32位,如果你在谈论一个int指针,那将因系统而异,所以是的,它只取决于底层代码是什么以及什么这样做会决定这一点。