coffee++ 2023-10-03 10:54 采纳率: 100%
浏览 23
已结题

如何用cin完全代替scanf?

例如 输入
1 2 3
2 3 4
可以用
scanf("%d %d %d\n%d %d %d", &h1, &m1, &s1, &h2, &m2, &s2);
输入
12:00
可以用
scanf("%d:%d",&a,&b)
那么如果使用cin>>或cin.get()等c++语言来描述 应该如何做?
其他类似的呢?

chatgpt给了一种方案
char ch; cin>>a>>ch>>b; //用ch来接收中间的':'
而换行似乎可以直接当空格看待?
cin>>h1>>m1>>s1>>h2>>m2>>s2;
直接这样写 总感觉会不太严谨?

  • 写回答

2条回答 默认 最新

  • [PE]经典八炮 2023-10-03 19:41
    关注

    先输入字符串,然后用正则处理
    不过听说c++新标准要出std::scan之类的直接解决这个问题

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月7日
  • 已采纳回答 2月27日
  • 修改了问题 10月3日
  • 创建了问题 10月3日