我可以在Microsoft C中测量sprintf所需的缓冲区吗?
发布时间:2020-12-14 05:46:52 所属栏目:Windows 来源:网络整理
导读:我正在用Visual Studio 2008编写一个小概念验证控制台程序,我希望它输出彩色文本以便于阅读.为了便于编码,我还想进行快速的printf替换,我可以像这样编写: MyPrintf(L"Some text 1[bright red]goes here1[default]. %d",21); 这将非常有用,因为我还在某些
我正在用Visual Studio 2008编写一个小概念验证控制台程序,我希望它输出彩色文本以便于阅读.为了便于编码,我还想进行快速的printf替换,我可以像这样编写:
MyPrintf(L"Some text 1[bright red]goes here1[default]. %d",21); 这将非常有用,因为我还在某些地方构建并传递字符串,因此我的字符串将能够包含格式信息. 但是我碰到了wsprintf的墙,因为我找不到一个能让我在将它传递给函数之前找出所需缓冲区大小的函数.当然,我可以分配1MB即可,但这不会很漂亮,如果我找不到更好的方法,我宁愿将其作为备份解决方案. 另外,或者我正在考虑使用std :: wstring(我实际上更像是一个C级经验很少的C人,所以我现在发现简单的旧式char数组),但是没有像wsprintf这样的东西您可以在其中构建一个替换为值的字符串. 所以我该怎么做? 解决方法
你想要
_snwprintf.该函数需要一个缓冲区大小,如果缓冲区不够大,只需将缓冲区的大小加倍,然后再试一次.为了避免每次都要进行多次_snwprintf调用,请跟踪上次使用的缓冲区大小,并始终从那里开始.你会在这里和那里做一些多余的电话,你会不时地浪费一些公羊,但它很有效,并且不能超过任何东西.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- wix – 使用msiexec / a启动管理安装的目的是什么?
- Windows Server 2012 R2 WSUS-7:查看状态报告
- windows+appium自动化,Desired Capabilities参数填写,查看
- windows-server-2012 – 赢取2012 AD安全组权限
- 需要帮助在Windows上的Qt Creator中链接静态OpenCV库
- 在WIN32中的“BUTTON”类窗口上显示位图
- WIX:Package元素的Platform属性是否真的被弃用?
- windows – 进程内存的图形可视化
- windows – 如何获取通知区域图标列表?
- xaml – 在Windows 8中使用不同控件创建集线器页面
推荐文章
站长推荐
- 【opencv】在win7下安装python环境的opencv
- Windows和域后缀添加
- Unauthorizedaccessexception:如何等待来自用户
- windows-phone-7 – 如何在Silverlight Toolkit中
- .net – 在同一个解决方案中为多个项目添加相同的
- windows-phone-7 – 是否隐藏Windows Phone 7应用
- haskell – 在Windows 7上安装带有cygwin的Cabal
- windows-server-2008-r2 – 如何确定谁安装了程序
- windows-10 – 隐藏UWP中的状态栏
- windows – 告诉Emacs在特定窗口中打开新缓冲区
热点阅读