(精华版)_stprintf_s和_stscanf_s函数与UNICODE编码

讲解sprintf,swprintf和_stprintf_s的区别与联系,它们与Unicode编码间的关系,相关的字符串处理函数,及注意事项。适用于微软的visual C++平台中使用。适合在校大学生阅读。

版权所有。转载请注明出处。

_stprintf_s和_stscanf_s函数与UNICODE编码

一、核心内容

该文档适用于微软的visual C++ 平台。

需要头文件:<TCHAR.H>

MSDN上对stprintf_s和_stscanf_s函数的定义:

TCHAR.H routine _UNICODE & _MBCS not defined _MBCS defined _UNICODE defined

_stprintf_s sprintf_s sprintf_s swprintf_s

_stscanf_s sscanf_s sscanf_s swscanf_s

对应的代码为:

#ifdef UNICODE

#define _stprintf_s swprintf_s

#else

#define _stprintf_s sprintf_s

前面的t表示编码,后面的_s表示检查内存溢出,前面的_表示非标准库函数。

从上我们可以看出,_stprintf_s和_stscanf_s是为适应不同编码而定义的两个宏,在不同的编码环境下他们所表示的函数是不同的。

_s是security的意思,具体含义参见后面的Security Remarks部分。

(1)int sprintf_s( char *buffer, size_t sizeOfBuffer, const char *format [, argument] ... ); //ANSI版本

int swprintf_s(wchar_t *buffer, size_t sizeOfBuffer, const wchar_t *format [,argument]...); //UNICODE版本

你可能喜欢

  • Unicode编码表
  • 快速编码
  • 编码技术
  • 算术编码
  • 视频编码
  • 编码规则

(精华版)_stprintf_s和_stscanf_s函数与UNICODE编码相关文档

最新文档

返回顶部