1、/斜杠,\反斜杠
反斜杆:\反斜杠主要起连接字符和转义字符的作用。转义字符后不得再有空格。作连接字符时\后若没顶格,则当作空格输入对待
斜杆:作除法符号,注释符用
1、在宏定义中,要换行必须使用 \ 结尾
#define CHECK_ACTION_RETURN(expr) \
if (!expr) { \
printf(":failed(%d)\n", ret); \
return ret; \
} else { \
printf(":ok\n"); \
}
2、在字符串常量中,可以使用 \ 结尾。
"this \
is \
for \
testing"
等同与
"this is for testing"
3、另外,在普通的语句中,也可以通过 \ 实现换行,不过这时没有 \ 也是一样的效果。
printf("this is for test %d %d %d\n",\
test_output_a,\
test_output_b,\
test_output_c);
等同于
printf("this is for test %d %d %d\n",
test_output_a,
test_output_b,
test_output_c);
2、/* */起注释作用
2.1 /*总是与最近的*/配对,因此/* */不能嵌套。比如/* xxx /*xxx */ xxx */ 错误,最后一个*/多余
2.2 只要/和*之间没有空格,系统认为注释开始 /*xxx都是注释
2.3 编译器处理注释时将注释用空格代替
int j = b _/_ *p;是合法的式子,空格被滤除
2.4 编译器处理注释要早于预编译,所以不能用宏定义作注释符号
3、\ddd或\xhh可以表示字符集中的任一字符,如\102表示8进制B,102 =66(十进制)及B
4、\\表示输出“\”,\'表示输出“ ' ”
5、逻辑运算符和按位运算符
逻辑运算符通常用在判断上,或运算||与运算&&
按位通常用在运算上,|按位或,&按位与
6、花括号{},将数据打包成一体,与外界绝缘
7、字符串常量与字符常量
1,‘1’,“1”表示3个意思
1--整型,占4字节
‘1’--字符常量,占1字节
“1”--字符串常量,占2字节末尾还有格\0结束符