C语言如何判断字符串中是否包含转义字符,比如一个字符串 “abc\'efgh”,我如何判断这个字符串中包含转义呢 10
虽然双引号中可以包换单引号且无需转义,但是如果我用了转义的\'怎么能判断出这个单引号是转义的?...
虽然双引号中可以包换单引号 且无需转义,但是如果我用了转义的\'怎么能判断出这个单引号是转义的?
展开
3个回答
展开全部
不管用单引号还是双引号,只要带反斜杠就是转义,如果需要打印反斜杠,就"\\" 。
你是想判断字符串中有没有使用转义?
让我试试。。。。。
。。。。。。
。。。。。。
。。。。。。
。。。。。。
晕死,今天我大脑进屎了,转义是编译器干的,二进制代码中没有任何转义字符的信息了。
#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);
}
或许你可以另写一个程序去读源文件。。。。。
你是想判断字符串中有没有使用转义?
让我试试。。。。。
。。。。。。
。。。。。。
。。。。。。
。。。。。。
晕死,今天我大脑进屎了,转义是编译器干的,二进制代码中没有任何转义字符的信息了。
#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);
}
或许你可以另写一个程序去读源文件。。。。。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询