首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >c++问题与TextOut() gdi函数LPCSTR参数

c++问题与TextOut() gdi函数LPCSTR参数
EN

Stack Overflow用户
提问于 2014-08-21 15:02:13
回答 1查看 1.1K关注 0票数 0

我正在尝试使用TextOut函数在我的窗口上绘制单词,下面的方法对我来说很好:

代码语言:javascript
复制
HDC hdc = GetDC(windowHandle);
TextOut(hdc, 10, 10, TEXT("Hello World"), 16);
ReleaseDC(windowHandle, hdc);

这个输出:Hello

但是,到目前为止,当我执行以下方法时,一切都很好:

代码语言:javascript
复制
HDC hdc = GetDC(windowHandle);
string myString = "Hello World";
TextOut(hdc, 10, 10, myString.c_str(), 16);
ReleaseDC(windowHandle, hdc);

程序输出: Hello World#$%^&

而#$%^&部分实际上是其他正方形符号,我不知道如何在键盘上写。我知道TextOut函数的第四个参数是LPCSTR类型,在字符串之后使用.c_str()函数应该正确地输出LPCSTR变量,因此,既然程序运行,那么为什么要在Hello的末尾得到teh #$%^&包含在Hello末尾,以及如何解决这个问题?我确实需要使用第二种方法,而不是第一种,因为我的程序将生成字符串,然后我想要输出到我的窗口。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-21 15:05:09

根据TextOut (http://msdn.microsoft.com/en-us/library/windows/desktop/dd145133%28v=vs.85%29.aspx)的文档,fith参数反映字符串的长度。你说的是16,然而,只有11。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25429722

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档