Skip to content

FB_UNQUOTE


编译器执行的内置定义(宏)。

语法

` FB_UNQUOTE( arg )

`

参数

arg

参数

描述

将字符串字面量转换回标记。

更精确地说,__FB_UNQUOTE__ 返回的文本相比通过参数传入的文本去掉了一层引号(参数本身可能已经是过度引用的字符串,此时返回值为普通字符串)。

示例

start GeSHi

vb
#macro m( arg )
    Scope
        Var v1 = arg
        #print TypeOf(v1)
        Print v1
        Var v2 = __FB_UNQUOTE__( arg )
        #print TypeOf(v2)
        Print v2
    End Scope
#endmacro

m("""Hello""")
m("1")

Sleep

/' Compiler output:
String
String
String
Integer
'/

/' Output:
"Hello"
Hello
1
 1
'/

end GeSHi

start GeSHi

vb
#define X __FB_QUOTE__( Print "hello" )
#macro Y( arg )
  __FB_UNQUOTE__( arg )
#endmacro

Print X
Y( X )

/' Output:
Print "hello"
hello
'/

end GeSHi

版本

  • 自 fbc 1.08.0 起

与 QB 的区别

  • FreeBASIC 新增

另请参阅

  • __FB_QUOTE__
  • __FB_EVAL__

返回 目录

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