![](/img/trans.png)
[英]std::getline skipping input from std::cin after last occurrence of delimiter, but not with input from std::istringstream
[英]How to read from std::cin to istringstream
我想以 [mm/dd/yy] 格式解析日期:
#include <sstream>
#include <iomanip>
#include <iostream>
#include <time.h>
int main()
{
struct tm time;
std::istringstream ss;
std::cout << "enter string [mm/dd/yy/]: ";
std::cin >> ss;
ss >> std::get_time(&time, "%D");
std::cout << time.tm_wday << std::endl;
}
但我無法從std::cin
讀取到std::istringstream
,但為什么呢?
streambuf
。 甚至streambuf
是如何用C++實現的? 是數組嗎? 一個結構?,我可以在某處找到它的源實現嗎?您可以使用std::string
和std::getline
:
std::string input_text;
std::getline(std::cin, input_text);
std::istringstream input_text_stream(input_text);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.