我正在为学校项目开发语法检查程序。
它应该读取.c或.cc文件,并确定文件的语法是否正确。 这意味着注释部分和其他异常需要通过某种状态处理来处理。
我的问题是你如何声明char
为' ' '?
int lib::read_state(char a, char b) {
char c;
switch(a) {
case '/':
if(combine_chars(a,b) == "/*") {
return BLOCKCOMMENT;
}
else if(combine_chars(a,b) == "//") {
return ROWCOMMENT;
}
else
return CODE;
case '"':
return STRING;
default:
return CHARACTER;
}
}
组合字符是一个将两个字符转换为字符串然后比较它们的函数,返回值很简单enums
。
这是代码,你可以看到我需要另一个处理char声明的情况。 我试过把案例'''' ,但那不起作用,也"'""""也没用。
如果有任何办法,我可以在这里获取建议。
谢谢!
答案 0 :(得分:3)
由" escaping"它带有反斜杠:
'\''
答案 1 :(得分:0)
你只需要用\
来逃避它char single_quote='\'';