sprintf_s
是一个安全的字符串格式化函数,用于将格式化的数据写入字符串
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
int sprintf_s(char *str, size_t size, const char *format, ...);
参数说明:
char *str
:指向字符数组的指针,用于存储格式化后的字符串。size_t size
:要写入字符数组的最大字符数(包括终止的空字符)。const char *format
:格式化字符串,包含占位符,如 %d
、%f
等。...
:可变参数列表,包含要插入字符串的变量。示例:
#include <stdio.h>
#include <stdarg.h>
#include <string.h>
int main() {
int a = 10;
double b = 3.14;
char buffer[50];
// 使用 sprintf_s 格式化字符串
int result = sprintf_s(buffer, sizeof(buffer), "整数:%d,浮点数:%.2f", a, b);
// 检查结果
if (result > 0) {
printf("格式化后的字符串:%s\n", buffer);
} else {
printf("格式化失败。\n");
}
return 0;
}
输出:
格式化后的字符串:整数:10,浮点数:3.14
注意:在使用 sprintf_s
时,确保提供足够的空间来存储格式化后的字符串,以避免缓冲区溢出。