标点
来自cppreference.com
这些是 C 中的标点符号。每个符号的含义在链接的页面中详述。
{
}
[
]
#
- 预处理指令起始标志。
- 字符串化的预处理操作。
##
(
)
- 表达式分组,改变结合顺序。
- 函数调用运算符。
-
sizeof
或_Alignof
(C11 起)表达式中划分出运算对象。 - 显式类型转换中划分出类型标识。
- 复合字面量中划分出标识。(C99 起)
- 声明或类型标识中分组,改变结合顺序。
- 函数声明(声明或类型标识)中划分出参数列表。
-
if
、switch
、while
、do-while
或for
语句中,划分出控制块。 - 仿函数宏定义中,划分出宏参数。
-
defined
、__has_include
或__has_c_attribute
(C23 起)预处理运算符的一部分。 - 泛型选择表达式的一部分。 (C11 起)
-
_Atomic
类型说明符中,划分出类型标识。(C11 起) - 静态断言声明中,划分出操作对象。(C11 起)
-
_Alignas
说明符中,划分出操作对象。(C11 起) - 属性中, 划分出操作对象。(C23 起)
;
- 如下语法的结束:
- 分隔 for 循环中的第二和第三子句。
:
...
?
- 条件运算符的一部分。
::
- 在属性中指示属性作用域。(C23 起)
.
->
~
!
+
-
*
- 间接引用运算符(也称解引用运算符)。
- 乘法运算符。
- 声明符或类型标识中的指针运算符或成员指针运算符。
- 在函数声明的变长数组声明中的数组长度占位符。(C99 起)
/
%
^
&
|
=
+=
-=
*=
/=
%=
^=
&=
|=
==
!=
<
- 小于运算符。
- #include指令中标志头文件名起始。
>
- 大于运算符。
- #include指令中标志头文件名结束。
<=
>=
&&
||
<<
>>
<<=
>>=
++
--
,
- 逗号运算符。
- 以下列表的列表分隔符:
引用
- C17 标准(ISO/IEC 9899:2018):
- 6.4.6 Punctuators (第 52-53 页)
- C11 标准(ISO/IEC 9899:2011):
- 6.4.6 Punctuators (第 72-73 页)
- C99 标准(ISO/IEC 9899:1999):
- 6.4.6 Punctuators (第 63-64 页)
- C89/C90 标准(ISO/IEC 9899:1990):
- 3.1.6 Punctuators
参阅
替用表示 (C95) | 某些运算符的替用拼写 |