c++强制类型转换后不能进行判断
c++
#include<iostream>
#include<string>
using namespace std;
void judge(string a,int n){
int j,t;
for(j=0;j<n;j++){
t=a[j];
//if(a[i]<='9'&&a[i]>='0')
cout<<t<<" ";
if(48<=t<=57)
{
cout<<a[j]<<" ";
}
else{
cout<<" ";
}
}
}
int main(){
string a;
int n;
cin>>a;
n=a.length();
judge(a,n);
return 0;
}
转换成int类型的t输出检验都是正确的,已将转成int,但是输出结果来看并没有进行if条件的判断,都直接输出了。
如果不进行转换直接换成对于字符的对比判断就没有错if(a[i]<='9'&&a[i]>='0')
为什么转换后的判断失灵了
if(48<=t<=57)改为
if(48<=t && t <=57)