Bootstrap

关于string的输出问题

在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;
}

;