“字符字符错误中的字符太多”

我正在努力与一段代码,并得到错误:

字符文字错误中的字符太多

使用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表,如果你想看看:

http://www.tamasoft.co.jp/en/general-info/unicode.html