标题:关于c++打开文件
只看楼主
yangweiwei
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2008-10-11
 问题点数:0 回复次数:7 
关于c++打开文件
就是想打开任意的文件,比如:fstream  infile("f2.txt",ios::in);这只是打开了固定的文件f2.txt。而我想通过程序打开任意文件,文件名由用此程序的用户从键盘输入。该怎么弄?高手指点。
谢谢!
搜索更多相关主题的帖子: 文件 文件 
2008-10-11 14:19
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
得分:0 
string str;
cin>>str;
fstream  infile(str.c_str(),ios::in);

2008-10-11 14:24
yangweiwei
Rank: 1
等 级:新手上路
帖 子:17
专家分:0
注 册:2008-10-11
得分:0 
哦,谢谢楼上,c_str()是类string的函数吗?
2008-10-11 14:36
lockhawk
Rank: 1
等 级:新手上路
帖 子:94
专家分:0
注 册:2008-9-17
得分:0 
回复 2# blueboy82006 的帖子
问下为什么string的语法我这里不能用?
#include "iostream.h"
#include "string.h"
int main()
{
    string da;
    cin>>da;
    cout<<da;
    return 0;
}

编译错误是:string和da没有声明

人生最大痛苦:虽然不明白你们说什么,但还是要听!
2008-10-11 18:11
weishuiershui
Rank: 1
等 级:新手上路
帖 子:6
专家分:0
注 册:2008-10-9
得分:0 
#include "iostream.h"
#include "string.h"
这两个库是C++标准库里面的,而不是你当前库里面的吧?所以不能这样加载。。。。

应该这样:
#include <iostream>
#include <string>
using namespace std;


int main()
{

    string da;
    cin>>da;
    cout<<da;
    return 0;

}
2008-10-12 00:13
cayus
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2008-10-12
得分:0 
标准库 用<>

自定义库才用""
2008-10-12 01:09
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
得分:0 
[bo][un]cayus[/un] 在 2008-10-12 01:09 的发言:[/bo]

标准库 用

自定义库才用""

不错不错...

2008-10-12 08:36
blueboy82006
Rank: 5Rank: 5
来 自:幻想世界
等 级:贵宾
威 望:16
帖 子:1227
专家分:57
注 册:2007-7-23
得分:0 
[bo][un]yangweiwei[/un] 在 2008-10-11 14:36 的发言:[/bo]

哦,谢谢楼上,c_str()是类string的函数吗?

是的,
它把string转为C风格字符串...
详见:
basic_string::c_str
const E *c_str() const;
The member function returns a pointer to a nonmodifiable C string constructed by adding a terminating null element (E(0)) to the controlled sequence. Calling any non-const member function for *this can invalidate the pointer.

2008-10-12 08:39



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-237611-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.204803 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved