C语言如何判断字符串中是否包含转义字符,比如一个字符串 “abc\'efgh”,我如何判断这个字符串中包含转义呢

虽然双引号中可以包换单引号 且无需转义,但是如果我用了转义的\'怎么能判断出这个单引号是转义的?

不管用单引号还是双引号,只要带反斜杠就是转义,如果需要打印反斜杠,就"\\" 。
你是想判断字符串中有没有使用转义?
让我试试。。。。。
。。。。。。
。。。。。。
。。。。。。
。。。。。。
晕死,今天我大脑进屎了,转义是编译器干的,二进制代码中没有任何转义字符的信息了。
#include<stdio.h>
int main(){

char a[20]="abc\'efgh";
int i=0;
for(i=0;i<20;i++){
if(a[i]=='\\'&&a[i+1]=='\'')
printf("true,%d",i);
if(a[i]=='\'')
printf("false");
if(a[i]==0){
printf("%d",i);
break;
}
}
printf("\n%s",a);
}
或许你可以另写一个程序去读源文件。。。。。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-28
不可以。转义字符是给人看的,电脑可不分什么转不转义的
第2个回答  2011-11-28
其实字符中要使用转义符的就那么几个,可以用群举的办法判断
相似回答