注册 登录
编程论坛 C++教室

问题 文件结束符

humy 发布于 2012-07-24 22:25, 309 次点击
//4-35.cpp
#include<iostream>
#include <vector>
#include <string>
using namespace std;
    int main (){
    vector<string>    svec;
    string str;
    cout<<"enter strings:ctrl+z to end"<<endl;
    while (cin>>str)
        svec.push_back(str);
    char **parr=new char *[svec.size()];
    size_t ix=0;
    for (vector<string>::iterator iter=svec.begin();
        iter!=svec.end();++iter,++ix){
            char *p=new char [(*iter).size()+1];
            strcpy(p,(*iter).c_str());
    parr[ix]=p;
    }
    cout<<"vector:"<<endl;
    for(vector<string>::iterator iter2=svec.begin();
        iter2!=svec.end();++iter2)
        cout<<*iter2<<endl;
    cout<<"arrays"<<endl;
    for(ix=0;ix!=svec.size();++ix)
         cout<<parr[ix]<<endl;
    for(ix=0;ix!=svec.size();++ix)
        delete[] parr[ix];
    delete[] parr;
        return 0;
}
这是c++primer上的,我在vs2010运行了一下,即使是回车再ctrl z都没反应。只出现^z.。。。。。。。
2 回复
#2
pangding2012-07-25 00:06
c-z 完了之后可能还得回车一下。不过我想你应该会回车试试的,恐怕不是这个问题。

你 c-z 完了的效果能截屏给我们看一下吗?
#3
humy2012-07-25 10:06
不好意思,“c-z 完了之后可能还得回车一下”是对的,我试了试:输完后,回车在c-z再回车就好了。十分感谢
1