0

我正在與C++Visual Studio 2008 IDE。我需要將長轉換爲一個CString(或其他格式,可以很好地與CString)。一旦我轉換了它,我需要將它連接到另一個CString。像這樣的東西(但開放的建議):在C++中將長轉換爲CString

CString = CString + convertToCString(long) 

問題1:什麼是最好的辦法(和請解釋原因的方法是比別人優越)的轉換?

現在,我使用_ltow_s

CString = CString + _ltow_s (long) 

_ltow_s將返回WCHAR。所以我結束了:

CString = CString + WCHAR 

問題2:那是級聯安全將產生預期的結果? 'CString + WCHAR'的結果與一個有效的CString結果?

問題3:如果我們正在使用_ltow_s的路徑,需要分配的緩衝區大小是多少? 32?另外,是否有一個基數10(十進制)的定義?

更新: 我發現這個線程:How to cast a LONG to a CString? 我喜歡它,因爲它提供了多種選擇。還缺少什麼是不同情況下的首選方式(在合理範圍內)。魯棒性,安全性等..

回答

1

試試這個:

CString cstr; 
cstr.Format("%ld", long); 
+0

感謝。什麼是'cs'?它來自哪裏? – 2014-10-30 18:59:47

+0

它認爲它應該是cstr.Format(「%ld」,long); – Dijkgraaf 2014-10-30 19:44:09

+0

@robert,爲了更加清晰,我更新了問題1(請解釋爲什麼一種方法比其他方法更優越)。 – 2014-10-30 20:02:18