
c++ fstream write()的问题。
#include<fstream>#include<iostream>#include<string>usingnamespacestd;intmain(){string...
#include <fstream>
#include<iostream>
#include <string>
using namespace std;
int main(){
string str("abcdefg");
ofstream outFile("atxt4.txt");
if(!outFile){
cerr<< "unable to open output file: "
<< "atxt4.txt" << " -- bailing out!\n";
return -1;
}
outFile.write(str,4);
cout<< str;
return 1;
}
错误是:cannot convert parameter 1 from 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' to 'const char *'
高人们,怎么回事啊,我是菜鸟。 展开
#include<iostream>
#include <string>
using namespace std;
int main(){
string str("abcdefg");
ofstream outFile("atxt4.txt");
if(!outFile){
cerr<< "unable to open output file: "
<< "atxt4.txt" << " -- bailing out!\n";
return -1;
}
outFile.write(str,4);
cout<< str;
return 1;
}
错误是:cannot convert parameter 1 from 'class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >' to 'const char *'
高人们,怎么回事啊,我是菜鸟。 展开
3个回答
展开全部
修改如下,我就不验证了,自己验证一下。
string类里面有一个函数c_str().可以把string类的对象转为char
#include <fstream>
#include<iostream>
#include <string>
using namespace std;
int main(){
string str("abcdefg");
ofstream outFile("atxt4.txt");
if(!outFile){
cerr<< "unable to open output file: "
<< "atxt4.txt" << " -- bailing out!\n";
return -1;
}
outFile.write(str.c_str(),4);/*要求一个字符串类型char*,所以要转换*/
cout<< str;
return 1;
}
string类里面有一个函数c_str().可以把string类的对象转为char
#include <fstream>
#include<iostream>
#include <string>
using namespace std;
int main(){
string str("abcdefg");
ofstream outFile("atxt4.txt");
if(!outFile){
cerr<< "unable to open output file: "
<< "atxt4.txt" << " -- bailing out!\n";
return -1;
}
outFile.write(str.c_str(),4);/*要求一个字符串类型char*,所以要转换*/
cout<< str;
return 1;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
outFile.Write(str.c_str(), 4);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
数据类型不正确
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询