2015-06-09 183 views
1

我正在使用unicode設置編譯C++ MFC項目,我通常使用函數_ ttofCString轉換爲double,但我找不到使用TCHARlong double的函數。將long double轉換爲CString

在此先感謝。

+0

如果您使用的是MSVC,「long double」與「double」完全相同 –

回答

4

使用Format方法CString類:

CString sNum; 
long double fNum = 10.0; 
sNum.Format(_T("%f"), fNum); 
2

您很可能會發現,對於與Microsoft基礎類相關的目標,long doubledouble的大小相同。

因此,你可以建立自己的函數存根,(它調用_ttof)與靜態斷言sizeof(double) == sizeof(long double)只是爲了安全起見:

static_assert(sizeof(double) == sizeof(long double), "double and long double are not the same size");