C语言中的标点符号
标点符号(punctuators)是具有独立语法和语义的符号。根据上下文,标点符号可以指示执行某个操作(该操作可能生成一个值或者函数指示符,也可能产生副作用,或者它们的某种组合。),这种情况下标点符号也称为运算符(operator)。运算符作用实体称为操作数(operand)。
C语言中的标点符号包括:
[ ] ( ) { } . -> ++ -- & * + - ~ !
/ % << >> < > <= >= == != ^ | && || ? : ; ...
= *= /= %= += -= <<= >>= &= ^= |= , # ##
<: :> <% %> %: %:%:
其中最后一行标点符号为双字符(digraphs),其对应字符如下表所示:
标点符号 | <: | :> | <% | %> | %: | %:%: |
对应字符 | [ | ] | { | } | # | ## |
如果在字符常量或者字符串字面量中,上述字符不会被解释成双字符;例如:
puts("<:"); //将输出<:。
除了字符串化,双字符和对应字符的使用基本相同,例如:
|
|
将输出:
arr[1] = 3
arr<:1:> = 3
#n作用是将n字符串化;语句PRINT(arr[1]);等价于语句printf("arr[1]" " = %d\n", arr[1]);;语句PRINT(arr<:1:>);等价于语句printf("arr<:1:>" " = %d\n", arr[1]);。