Long 指向常量宽字符串的指针,这里的 Long 的作用是啥?
Posted
技术标签:
【中文标题】Long 指向常量宽字符串的指针,这里的 Long 的作用是啥?【英文标题】:Long Pointer to Constant Wide String, what's the function of the Long here?Long 指向常量宽字符串的指针,这里的 Long 的作用是什么? 【发布时间】:2010-03-04 19:30:34 【问题描述】:当你有一个 LPCWSTR 时,为什么它是一个长指针?据我所知,它的定义中没有 Long。
谁能解释一下?
【问题讨论】:
【参考方案1】:“Long”是 Windows 16 位的遗留物。在过去,在 DOS 和 Windows 3.x 上,大多数应用程序都是 16 位的,并且具有 16 位指针。 32 位指针是“长”的,必须特别声明,并使用(在某些 DOS 情况下)选择器而不是平面地址空间。
【讨论】:
【参考方案2】:在 32 位或更高版本的机器上,长指针与任何其他指针相同。差异出现在具有较小本机字大小的机器上,例如,您可能具有 16 位指针和 32 位指针类型。通常他们被称为near
and far
pointers。
【讨论】:
以上是关于Long 指向常量宽字符串的指针,这里的 Long 的作用是啥?的主要内容,如果未能解决你的问题,请参考以下文章