| 跳过导航链接 | |
| 退出打印视图 | |
|
Oracle Solaris Studio 12.3:C 用户指南 Oracle Solaris Studio 12.3 Information Library (简体中文) |
2.11.3 does_not_read_global_data
2.11.5 does_not_write_global_data
2.11.26 warn_missing_parameter_info
2.14.5 __FUNCTION__ 和 __PRETTY_FUNCTION__
2.18 对 Intel MMX 和扩展的 x86 平台内部函数的编译器支持
以下形式的一行内容:
#assert predicate (token-sequence)
将 token-sequence 和断言名称空间(与用于宏定义的空间不同)中的谓词相结合。谓词必须为标识符标记。
#assert predicate
断言 predicate 存在,但是未与任何标记序列相结合。
缺省情况下,编译器提供以下预定义谓词(不在 -Xc 模式下):
#assert system (unix) #assert machine (sparc) #assert machine (i386)(x86) #assert cpu (sparc) #assert cpu (i386)(x86)
缺省情况下,lint 提供以下预定义谓词(不在 -Xc 模式下):
#assert lint (on)
任何断言均可使用 #unassert 进行删除,该命令的语法与 assert 的语法相同。使用不带参数的 #unassert 将删除关于谓词的所有断言;指定一个断言将只删除该断言。
可以使用以下语法在 #if 语句中测试断言:
#if #predicate(non-empty token-list)
例如,可以使用求值结果为 true 的以下行测试预定义谓词 system。
#if #system(unix)