我想使用asctime将时间分配给字符串。
time_t rawtime;
time ( &rawtime );
vector<string> TTime;
TTime.resize(10);
TTime = asctime(localtime ( &rawtime ));
我理解asctime正在返回一个指向字符串的指针。我是否必须创建自己的字符串并为其指定asctime的返回值,还是有更简单的方法?
答案 0 :(得分:1)
您可以直接从char *
:
string str = asctime(localtime ( &rawtime ));
这没有意义:
TTime = asctime(localtime ( &rawtime ));
您不能将单个字符串分配给字符串向量。您可以做的是:
TTime[0] = asctime(localtime ( &rawtime ));
答案 1 :(得分:0)
看起来你需要的是一个简单的字符串,
std::string TTime(asctime(localtime(&rawtime)));
答案 2 :(得分:0)
函数asctime()返回char * 并且std :: string可以从char *
构造std :: string time(asctime(localtime(&amp; rawtime)));
或
std :: string time; time = asctime(asctimer(localtimer(&amp; rawtime)));