如何将 LONG 转换为 CString?

发布于 2024-12-06 07:46:09 字数 207 浏览 0 评论 0原文

我想将 long 转换为 cstring。

我已经为此苦苦挣扎了一段时间,并且看到了解决这个问题的多种变体,或多或少充满了麻烦和焦虑。

我知道这个问题看起来很主观,但我认为这确实不应该。当环境涉及 MFC 和伴随这些环境的标准库时,必须有一种被认为是最好的方法。

我正在寻找一种可行的单行解决方案。有点像 C# 中的 long.ToString() 。

I want to cast a long to a cstring.

I've been struggling with this for a while and I've seen so many variants of solving this problem, more or less riddled with hassle and angst.

I know the question seems subjective, but it really shouldn't be in my opinion. There must be a way considered to be the best when the circumstances involve MFC and the standard libs that come with those circumstances.

I'm looking for a one-line solution that just works. Sort of like long.ToString() in C#.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

握住我的手 2024-12-13 07:46:09

很简单:

long myLong=0;
CString s;

// Your one line solution is below
s.Format("%ld",myLong);

It's as simple as:

long myLong=0;
CString s;

// Your one line solution is below
s.Format("%ld",myLong);
寻找我们的幸福 2024-12-13 07:46:09

有很多方法可以做到这一点:

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

There are many ways to do this:

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
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文