在printf中,加入直接
string a;
printf("%s",a);
回乱码,对于string这类,要用一下加.c_str()的方式,这个函数是返回字符串string的首地址,应为%s要的是char*,但是string只是字符串,要通过函数名来返回其首地址。
string a;
printf("%s",a.c_str());
并且string还有一些将字符串转换成数字的函数
#include<iostream>
using namespace std;
int main()
{
string a;
cin>>a;
int number;
number=stoi(a.substr());
//atoi(a.substr().s_str())
if(number>0)cout<<"YES"<<endl;
else cout<<"NO"<<endl;
cout<<number<<endl;
return 0;
}