1、 Sprintf
Char pszInfoBuf[50];
Sprint(pszInfoBuf, “***File:%sLine%d***”,__FILE__, __LINE__); //__FILE__过长,pszInfoBuf装不下程序异常。输出数组越界
2、 Snprintf/_snprintf(将整型数据转换为字符型数据)
在VC,VS下面只能用_snprintf,经过测试发现_snprintf()函数不会在转换以后添加’\0’标志,测试代码如下
char sa[5] = {1, 2, 3, 4, 5};
int b = 54321;
_snprintf(sa,3, "%d", b); //sa的值5,4,3,45
_snprintf(sa,5, "%d", b); //sa的值5,4,3,2,1
_snprintf(sa, 6, "%d", b); //sa的值5,4,3,2,1
printf(sa);
注意:_snprintf使用时”%d”的数据类型是b的数据类型
Sprint/_sprintf作用主要有以下两点:
第一:将整型数据转换为字符串数据
第二:将字符串数据转换为特定格式的字符串数据
_snprintf正确使用方法