在C ++中将long转换为CString

时间:2014-10-30 18:45:48

标签: c++ visual-studio-2008 type-conversion long-integer cstring

我正在使用 C ++ Visual Studio 2008 IDE合作。我需要将long转换为CString(或其他一些适用于CString的格式)。一旦我转换它,我需要将它连接到另一个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 个答案:

答案 0 :(得分:1)

试试这个:

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