我得到了一些关于如何查看C中的“字符串”是否包含特定字符的帮助。简而言之:
if(*s=='x') { //Where x is some character
//Do something
}
现在,据我所知,这适用于英文字母(a-z,A-Z)中的字母。
但是,如何检查当前字符是否等于特殊字符(例如æ,ø或å)?< / p>
答案 0 :(得分:2)
在大多数情况下,你应该使用一个函数:strchr
用于查找单个字节,或strstr
用于查找多个字节。
另外,一般来说C不知道字符,它只知道字节。特殊字符可以是单个字节 - 例如,iso8859-1编码中的æ是\xe6
- 或者它可能超过一个字节:utf-8编码中的相同字符是2字节序列{{ 1}}。
要搜索utf-8编码的字符串,可以使用
\xc3\xa6
答案 1 :(得分:1)
只需与角色的ASCII码进行比较:
if(*s==10) { //Where 10 is the ASCII code of the special character
//Do something
}
您可以在此处找到您的ASCII代码:http://www.asciitable.com/
答案 2 :(得分:1)