“字符字符错误中的字符太多”
我正在努力与一段代码,并得到错误:
字符文字错误中的字符太多
使用C#和switch语句来遍历string缓冲区并读取标记,但在此行中获取错误:
案件 '&&':
案例'||':
情况'==':
我怎样才能保持==
和&&
作为一个字符?
这是因为在C#中,单引号( ''
)表示(或封装)单个字符,而双引号( ""
)用于string。 例如:
var myChar = '='; var myString = "==";
这是一个例子:
char myChar = '|'; string myString = "||";
字符用单引号分隔,string用双引号。
好消息是C#switch语句使用string!
switch (mytoken) { case "==": //Something here. break; default: //Handle when no token is found. break; }
你不能把==
或||
作为字符,因为它们不是字符,而是一连串的字符。
你可以让你的开关…案件在string上工作。
一个char只能包含一个字符,一个字符literal是单引号中的单个字符,即'&'
– 如果你有更多的字符而不是你想要使用的string,那么你必须使用双引号:
case "&&":
我相信你可以使用Unicode编码来做到这一点,但我怀疑这是你真正想要的。
==
是unicode的值2A76,所以我相信你可以这样做:
char c = '\u2A76';
我目前无法testing,但我很想知道这是否适合您。
你需要挖掘其他人。 这是一个unicode表,如果你想看看: