用于Windows CE的snprintf
发布时间:2020-12-14 02:46:47 所属栏目:Windows 来源:网络整理
导读:我的程序在几个平台上运行.其中,Windows CE.目前,sprintf被广泛使用,导致缓冲区溢出等问题很多.我想用snprintf调用替换它们.对于Visual Studio,我发现了这个问题,它解决了问题的win32部分: snprintf and Visual Studio 2010 但我无法让它适用于Windows CE,
|
我的程序在几个平台上运行.其中,Windows CE.目前,sprintf被广泛使用,导致缓冲区溢出等问题很多.我想用snprintf调用替换它们.对于Visual Studio,我发现了这个问题,它解决了问题的win32部分:
snprintf and Visual Studio 2010 但我无法让它适用于Windows CE,因为函数_vsnprintf_s和_vscprintf以及常量_TUNCATE不可用.有人知道在Windows CE上复制snprintf(linux)行为的方法吗? 解决方法
到目前为止,我已经完成了以下功能:
int my_snprintf(char* str,size_t size,const char* format,...)
{
int len = 0;
va_list ap;
if (size == 0)
{
return 0;
}
va_start(ap,format);
len = _vsnprintf(str,size,format,ap);
va_end(ap);
if (len < 0 || len >= size)
{
len = size - 1;
}
if (size > 0)
{
str[size - 1] = ' ';
}
return len;
}
初步测试看起来没问题,它甚至可以为WinCE编译..任何反馈都非常感谢 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- windows-phone-7 – WP7 – 确定文化是英制的还是公制的
- active-directory – ADFS 3.0需要Powershell命令才能删除H
- 生产Windows Web服务器(IIS和SQL)应该在域中吗?
- Windows,Emacs,Git Bash和shell命令
- _XP64__在OSX 10.6上为C应用程序的默认构建定义在哪里?
- wpf – Microsoft.Win32.OpenFileDialog.ShowDialog()何时返
- 在Windows中使用子程序Popen.send_signal(CTRL_C_EVENT)时如
- windows – 具有多个根的IIS
- windows-7 – Windows 7始终附加VHD
- windows – 如何使用get-adgroupmember从活动目录中提取非默
推荐文章
站长推荐
- 在Windows上使用Git,在HTTP代理之后,而不在磁盘上
- window – 在PyGTK中创建RGBA Colormap
- wpf – 如何将System.Windows.Media.Color对象序
- winforms – Windows窗体字体问题第1部分
- windows-server-2008 – 使用资源监视器记录?
- windows-server-2008 – 在Windows 2008 Web服务
- DwmIsCompositionEnabled仍在Windows 8中使用吗?
- windows – 监控硬盘健康状况的最佳策略是什么?
- windows – 从ReplaceFile重现ERROR_UNABLE_TO_M
- windows-server-2012 – Server 2012 R2 Exchang
热点阅读
