搜索

首页  >  问答  >  正文

c++ - 关于cin>>s和getlne(cin,s)的问题。

我在一个正则匹配的从输入流中匹配遇见的一个问题。

string numbers;
    while (getline(cin,numbers))
    {
        for (sregex_iterator it(numbers.begin(), numbers.end(), r), end_it; it != end_it; ++it)

就是第二行,当我使用geilne(cin,numbers)的时候匹配没有问题,但是当我使用cin>>numbers的时候,在输入流中输入且还行之后,匹配的结果没有出来。
请问这是为什么。
cin不也是从输入流中读取数据到numbers中的么?
谢谢。

win7 vs2015。也不知道自己描述清楚没有。麻烦大家看一下。谢谢了。

高洛峰高洛峰2773 天前435

全部回复(1)我来回复

  • 天蓬老师

    天蓬老师2017-04-17 14:39:55

    用cin,t,n,空格都可以作为分隔符,getline(),默认n分隔,万一numbers这个字符串中间有个空格,用cin就不行吧。

    回复
    0
  • 取消回复