我有一个功能
transTime()
{
time_t const now_c = time(NULL);
cout << put_time(localtime(&now_c), "%a %d %b %Y - %I:%M:%S%p");
}
我试图将返回的值保存到变量中,以便可以执行类似的操作
string myTime = put_time(localtime(&now_c), "%a %d %b %Y - %I:%M:%S%p");
我需要对两个不同的插入使用相同的myTime实例。
编辑/更新:
使用stringstream之后,
string transTime()
{
stringstream transTime;
time_t const now_c = time(NULL);
transTime << put_time(localtime(&now_c), "%a %d %b %Y - %I:%M:%S%p");
string myTime = transTime.str();
//transTime >> myTime;
return myTime;
}
使用call函数时,我得到的是
Tue
,而不是完整的日期和时间。最有可能与getline有关,不确定该如何实现。
有什么帮助吗?
最佳答案
当您使用stringstream
捕获localtime()
的输出时,可以使用stringstream
存储存储在.str()
中的字符串。
那是,
string myTime = transTime.str();
return myTime;
关于c++ - 如何将put_time放入变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28977585/