我想把长篇文章转换为cstring。
我一直在努力解决这个问题,我已经看到了很多解决这个问题的变种,或多或少都充满了麻烦和焦虑。
我知道这个问题似乎是主观的,但它确实不应该在我看来。当情况涉及MFC和随这些情况而来的标准库时,必须有一种被认为是最好的方法。
我正在寻找一种可行的单线解决方案。类似于C#中的long.ToString()。
答案 0 :(得分:19)
这很简单:
long myLong=0;
CString s;
// Your one line solution is below
s.Format("%ld",myLong);
答案 1 :(得分:6)
有很多方法可以做到这一点:
CString str("");
long l(42);
str.Format("%ld", l); // 1
char buff[3];
_ltoa_s(l, buff, 3, 10); // 2
str = buff;
str = boost::lexical_cast<std::string>(l).c_str(); // 3
std::ostringstream oss;
oss << l; // 4
str = oss.str().c_str();
// etc