filename能不能使用变量,如ofstream(S);?
编译提示filename必须是const char *,
有什么别的函数吗?
请赐教!谢谢
9 个解决方案
#1
定义一个const字符串数组不就行了么?
#2
也可以使用string
比如说
string s;
ofstream file(s.c_str());
比如说
string s;
ofstream file(s.c_str());
#3
强转
#4
这个问题有点怪,ofstream()的参数本来就是用char *的,怎么不可以用呢?
#5
刚才试过了
字符指针变量
或字符数组
都可以
字符指针变量
或字符数组
都可以
#6
我的目的是输出一系列类似1.txt,2.txt,3.txt,.....(十以内)
则文件名部分我写的代码为:
int n=1;
char a[6]="12345";
a[0]=char('0'+n);
a[1]='.';a[2]='t';a[3]='x';a[4]='t';
const char *u=a;
ofstream fin(u);
感觉转换比较多,先int到char,再放入char数组中,最后转成const char *,
有更方便的代码吗?
则文件名部分我写的代码为:
int n=1;
char a[6]="12345";
a[0]=char('0'+n);
a[1]='.';a[2]='t';a[3]='x';a[4]='t';
const char *u=a;
ofstream fin(u);
感觉转换比较多,先int到char,再放入char数组中,最后转成const char *,
有更方便的代码吗?
#7
int n=1;
char a[6]="12345";
sprintf(a,"%d.txt",n);
char a[6]="12345";
sprintf(a,"%d.txt",n);
#8
放到数组中,
#9
std::string
CString
都可以啊
std::string::c_str();
(LPCTSTR)CString;
CString
都可以啊
std::string::c_str();
(LPCTSTR)CString;
#1
定义一个const字符串数组不就行了么?
#2
也可以使用string
比如说
string s;
ofstream file(s.c_str());
比如说
string s;
ofstream file(s.c_str());
#3
强转
#4
这个问题有点怪,ofstream()的参数本来就是用char *的,怎么不可以用呢?
#5
刚才试过了
字符指针变量
或字符数组
都可以
字符指针变量
或字符数组
都可以
#6
我的目的是输出一系列类似1.txt,2.txt,3.txt,.....(十以内)
则文件名部分我写的代码为:
int n=1;
char a[6]="12345";
a[0]=char('0'+n);
a[1]='.';a[2]='t';a[3]='x';a[4]='t';
const char *u=a;
ofstream fin(u);
感觉转换比较多,先int到char,再放入char数组中,最后转成const char *,
有更方便的代码吗?
则文件名部分我写的代码为:
int n=1;
char a[6]="12345";
a[0]=char('0'+n);
a[1]='.';a[2]='t';a[3]='x';a[4]='t';
const char *u=a;
ofstream fin(u);
感觉转换比较多,先int到char,再放入char数组中,最后转成const char *,
有更方便的代码吗?
#7
int n=1;
char a[6]="12345";
sprintf(a,"%d.txt",n);
char a[6]="12345";
sprintf(a,"%d.txt",n);
#8
放到数组中,
#9
std::string
CString
都可以啊
std::string::c_str();
(LPCTSTR)CString;
CString
都可以啊
std::string::c_str();
(LPCTSTR)CString;