2010-11-17 31 views
0

我想使用asctime將時間分配給字符串。使用CTime&asctime將時間分配給字符串或向量字符串

time_t rawtime; 
time (&rawtime); 
vector<string> TTime; 
TTime.resize(10); 
TTime = asctime(localtime (&rawtime)); 

我明白asctime正在返回一個指向字符串的指針。我需要創建自己的字符串並將其賦值爲asctime的返回值,還是有更簡單的方法?

回答

1

您可以直接構建一個字符串char *

string str = asctime(localtime (&rawtime)); 

這是沒有意義的:

TTime = asctime(localtime (&rawtime)); 

您不能將單個字符串分配給一個字符串向量。你可以做的是什麼:

TTime[0] = asctime(localtime (&rawtime)); 
0

看起來你需要的是一個簡單的字符串,

std::string TTime(asctime(localtime(&rawtime))); 
+0

這確實奏效。我不知道爲什麼,但我認爲每個字符串只能容納一個字和一個空格結束字符串。 – Malaken 2010-11-17 00:59:44

0

函數asctime()的返回的char * 和的std :: string可以從燒焦構建*

的std :: string時間(asctime(本地時間(& rawtime)));

std :: string time; time = asctime(asctimer(localtimer(& rawtime)));