Skip to content

CPTR


将指针表达式转换为指定数据类型的指针

语法

Cptr( PointerDataType, expression )

说明

expression 转换为 PointerDataType

PointerDataType 必须是 Pointer 类型(例如 DataType PtrAny Ptr),或者是其类型别名。

expression 可以具有不同的指针类型或为 Integer

  • 注意:目前,FB 实际上并不强制要求 PointerDataType 必须是指针。但这可能在未来版本中改变。目前,如果尝试转换为非指针类型,使用 -w pedantic 编译开关编译时可能会显示警告。

示例

start GeSHi

vb
Dim intval As Integer
Dim intptr As Integer Ptr
intval = &h0080
intptr = @intval
'' will print -128 and 128, as the first expression will be "seen" as an signed byte
Print *CPtr( Byte Ptr, intptr ), *intptr

end GeSHi

方言差异

  • -lang qb 方言中不可用,除非使用别名 __Cptr 引用。

与 QB 的差异

  • FreeBASIC 新增特性

另请参阅

  • Ptr
  • Cast
  • Cbyte
  • Cshort
  • Cint
  • Clngint
  • Csng
  • Cdbl

返回 目录

基于 FreeBASIC 官方文档翻译 如有侵权请联系我们删除
FreeBASIC 是开源项目,与微软公司无隶属关系