2016-10-10 29 views
0

+Lex operators之一,所以如果它被用作文本字符,那麼它應該以轉義運算符\作爲前綴。因此,爲什麼這兩個產生相同的結果?Lex運算符和轉義序列

[a+b] { printf("%s", yytext); } // matches a, +, or b 
[a\+b] { printf("%s", yytext); } // does same as above 

爲什麼第一行沒有打破轉義規則?

回答

0

讀下來,你所提供的文檔鏈接的幾行,你會發現:

在方括號中大多數運營商都將被忽略......

(「忽略」可能是不最好的描述;字符不是忽略;它們根本就不是特殊的,所以方括號內的加號只是加號)