比如一个输入文件流类的对象ifstream file_1;
file_1.open("test.txt");
如果我用一个字符串来保存这个文件名,比如说:string name="test.txt"
那样,我是不是能这样用,来打开一个文件?
file_1.open(name);
求教导,给出原因最好。
我这是从怎么把文件名作为参数传递而产生的疑问,解决这个疑问也行。
C++里文件名和字符串有什么关系?
答案:4 悬赏:0
解决时间 2021-04-27 13:35
- 提问者网友:小姐请专情
- 2021-04-26 23:56
最佳答案
- 二级知识专家网友:滚出爷的世界
- 2021-04-27 01:33
文件名本来就是字符串的 而open()这个函数的参数就是字符数组 当然可以接受字符串啦
全部回答
- 1楼网友:樣嘚尐年
- 2021-04-27 04:43
可以这样用,因为open的参数就是要一个字符串,不管是以字面量或者字符串变量的形式给出都是可以的。
- 2楼网友:滚刀废物浮浪人
- 2021-04-27 03:29
当然可以。
C++中open的原型是C语言的fopen(const char * _Filename, const char * _Mode);
第一个参数就是字符串
C++新增了fstream::open(std::string stringName),所以可以用string
- 3楼网友:萌萌哒小可爱
- 2021-04-27 02:29
c字符串就是以null结尾的字符数组,声明形式举例:char a[10] = "test';
如果不用c字符串,还可以采用string形式。#include 后,string s = "test";
文件名要不要用c字符串形式,主要看接收文件名的函数的参数是怎么设定的。如果设定为string 类型,那么也可以将一个string形式的文件名传递给它。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯