www.5129.net > C++关于string输出问题.

C++关于string输出问题.

string是C++的类,printf是C语言的函数,C++的东西不能直接用在C语言的上面。。。。。 C++的字符串分两种:一种是string,另一种是char *。第一种是C++特有的字符串类。第二种是来自于C语言的字符串, printf的%s格式符只能用于C语言的字符串。

main(){ string s; for(int i=0;i

#include #include #include using namespace std; int main() { vector svec;////////////////// svec.push_back("how "); svec.push_back("are "); svec.push_back("you"); svec.push_back("?"); for (vector::iterator iter = svec.begin(); ...

可以的 需要#include #include using namespace std;

可以的 #include using namespace std;int main(){ string s; cin>>s; cout

std::string str = "hello!"; printf("%s\n", str.c_str());

使用printf输出string类型时候出现错误:warning: cannot pass objects of non-POD type 'struct std::string' through '...'; call will abort at runtime. printf只能输出C语言内置的数据,而string不是内置的,只是一个扩展的类,这样肯定是...

你用的编译工具是VC++6.0吧 这是个bug 不过微软已经解决了修复了这个bug 解决办法是 进入到VC++6.0的安装目录Microsoft Visual Studio\VC98\Include,找到名为string的文件,注意不是string.h,然后找到下面这段代码: elseif (_Tr::eq((_E)_C,_...

你要先输入啊,因为写了一行cin>>s

string.c_str()本身就返回了一个char*了,你这串(char*)&是什么意思? 写入可以直接 fout

网站地图

All rights reserved Powered by www.5129.net

copyright ©right 2010-2021。
www.5129.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com