如果在使用sprintf函數時出現重復拼接的字符串,可以使用snprintf函數來替代。snprintf函數可以限制拼接的字符串的最大長度,防止溢出。
示例代碼如下:
#include <stdio.h>
int main() {
char str[20];
int a = 10;
int b = 20;
snprintf(str, sizeof(str), "%d%d", a, b);
printf("%s\n", str);
return 0;
}
在上面的代碼中,我們使用snprintf函數來替代了sprintf函數,并指定了字符串的最大長度為20。這樣,即使a和b的長度之和超過20,也不會發生溢出,字符串也不會重復拼接。結果輸出為"1020"。