`
cloudtech
  • 浏览: 4604991 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

getline(cin,str) 函数分析

 
阅读更多

运行环境vc6!

先来看这段代码:

string fileName;
cout<<"Enter the fileName: ";
cin>>fileName;

string name;

ofstream fcout(fileName.c_str(),ios::out|ios::app);

while(getline(cin,name)&&name.size()>0)
{
cout<<name<<endl;
fcout<<name;
}

当你输入:xxxxx 时,函数并没有但因输出,这就要注意,getline函数读取了cin>>fileName最后的回车导致循环不被执行;

注意:这段代码在gcc下是正确运行的

分享到:
评论

相关推荐

    比较两个字符串是否相等(用指针完成)

    使用指针来判断两个字符串是否相等 cout请分别输入两个字符串str1和str2:"; cin.getline(str1,100); cin.getline(str2,100);

    字符串循环输入时的换行符吸收问题

    getline(cin,str[i]); } for(int i=0;i&lt;n;i++) { cout&lt;&lt;str[i]; } } 如果n的输入为2;那么在程序中的for循环只会执行1次,若for循环n的输入为3则只会执行2次,如下图(以n=2为例) 问题出现的原因...

    C++中cin的用法详细

    1.cin简介 cin是C++编程语言中的标准输入流对象,即istream类的对象。cin主要用于从标准输入读取数据,这里的标准输入,指的是终端的键盘。此外,cout是流的对象,即ostream类的对象,cerr是标准错误输出流的对象,...

    多项式拟合 dll 最小二乘法 表达式计算

    std::getline(cin,expr); cout请输入x的值:\n"; cin&gt;&gt;val; err=Shared.symbols(const char*, double, double*, BOOL)&gt;("Function")(expr.c_str(),val,&ret,TRUE); if(err) { Shared.symbols(size_t...

    C++实验报告.doc

    cin.getline(s,100); S t(s); cout原字符串为:\n"; t.print(); t.f(); cout删除后的字符串为:\n"; t.print(); } 4、定义一个类Array,实现二维数组每列元素按各元素的各位数字之和从小到大排序。 要求用一个专门的...

    学生成绩管理系统C++

    student::student() //用构造函数来初始化。 { head=new studentnode; head-&gt;next=NULL; } //1.输入学生姓名、成绩等数据,并保存在链表中。 int student::addstudent() { studentnode * p; int i; char ...

    c++ 面试题 总结

    cin.getline(a,50,'\n'); for(i=0,j=strlen(a)-1;i(a)/2;i++,j--) { t=a[i]; a[i]=a[j]; a[j]=t; } cout; } //第二种 string str; cin&gt;&gt;str; str.replace; cout&lt;&lt;str; -------------------------------...

    From C to C++

    cin.getline(ms,N); strUpper(ms); cout; strLower(ms); cout; return 0; } void strUpper(char *s) { for(;*s;s++) if(*s&gt;='a'&&*s)*s-='\x20'; } void strLower(char *s) { for(;*s;s++) if(*s&gt;='A'...

    hafumanshu

    getline(cin,ch,'\n'); //回车键作为输入结束条件。所以输入结束时按两次回车, //第一次作为分界符,第二次通知流对象cin已输入一行字符 while(ch[k]!='\0')//统计输入字符个数 k++; Tree=new char[k+1]; ...

    学生信息管理系统代码

    cin.getline(buffer, 80); cout输入整数错误,请重新输入:"; cin&gt;&gt;n; } return n; } void print(CourseList &list;)//输出所有数据 { system&#40;"cls"&#41;;//清屏 LoadData1(list); cout(ios::left); ...

Global site tag (gtag.js) - Google Analytics