c语言 snprintf
时间: 2023-08-27 14:22:49 浏览: 101
C语言printf()的用法
5星 · 资源好评率100%
`snprintf` 是 C 语言中的一个函数,用于将格式化的字符串写入字符数组中。它的原型如下:
```c
int snprintf(char *str, size_t size, const char *format, ...);
```
其中,`str` 是用于存储结果的字符数组,`size` 是字符数组的大小,`format` 是格式化字符串,后面可以跟随零个或多个额外参数。
`snprintf` 函数会根据 `format` 字符串中的格式说明符将额外参数格式化为字符串,并将结果写入 `str` 字符数组中,最多写入 `size - 1` 个字符。函数返回写入字符数组的字符数(不包括结尾的空字符 '\0'),或者如果发生错误则返回负值。
下面是一个使用 `snprintf` 的例子,将一个整型变量格式化为字符串并存储到字符数组中:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int num = 42;
char str[20];
snprintf(str, sizeof(str), "The number is %d", num);
printf("%s\n", str);
return 0;
}
```
上述代码会将字符串 "The number is 42" 存储到字符数组 `str` 中,并打印出来。请注意,`sizeof(str)` 用于指定字符数组的大小,以防止越界访问。
阅读全文