最常见的错误用法有:
1.
char sa[256]={0};
_snprintf(sa,sizeof(sa),"%s",sb);
//错误原因:当sb的长度>=256的时候,sa将没有'/0'结尾...2.
char sa[256];
_snprintf(sa,sizeof(sa)-1,"%s",sb);
//错误原因:当sb的长度>=255的时候,sa将没有'/0'结尾,忘记给sa初始化
3.
char...sa[256];
_snprintf(sa,sizeof(sa)-1,"%s",sb);
sa[sizeof(sa)]=0;
//错误原因:最后一行数组越界
正确的用法
1..../test
aaabbbccc length=9
str1=abc,ret1=3
str2=aaa,ret2=9
====================================
这个函数的格式跟...printf的是差不多一样的,
不过在gcc里面,好像那个0是没用的,左边不会补0,会补空格,
具体格式在后文,
这是我试验的代码:
1 #include
2
3 int