我需要转换非文字字符串中包含的转义序列(以便将它们拆分为更多字符,第一个字符为\
,其他字符仅为n
,r
或者甚至是八进制代码等)到该转义序列所代表的实际字符。
我的第一个想法是可以使用宏(例如#define to_escape(x) '\(x)'
并不起作用),但我想知道是否确实存在这样的方式以及是否有更好的方法。
当然我可以使用一个简单的switch语句来表示\a
,\f
和类似的转义符,但那么我将如何处理所有八进制和十六进制转义?
答案 0 :(得分:1)
你可以去做这个字节分配
\' single quote byte 0x27 in ASCII encoding
\" double quote byte 0x22 in ASCII encoding
\? question mark byte 0x3f in ASCII encoding
\\ backslash byte 0x5c in ASCII encoding
\a audible bell byte 0x07 in ASCII encoding
\b backspace byte 0x08 in ASCII encoding
\f form feed - new page byte 0x0c in ASCII encoding
\n line feed - new line byte 0x0a in ASCII encoding
\r carriage return byte 0x0d in ASCII encoding
\t horizontal tab byte 0x09 in ASCII encoding
\v vertical tab byte 0x0b in ASCII encoding
检查他们的地址是否与其六位地址匹配,您可以检索以下字符。