想写一下C++中sprintf函数的用法
- 使用说明
- 参数列表
- 示例
- 值得注意的地方
使用说明
sprintf函数包含在C++的头文件cstdio中,用于向字符串中按照指定格式插入内容,具体调用形式如下:
int sprintf( char *str, const char char * format,… );
参数列表
| 参数 | 描述 |
|---|---|
| str | 指向存储C字符串数组的指针 |
| format | 一段包括格式字符串的C字符 |
| …(additional arguments) | 取决于format字符串,内容为待添加到str串中的内容 |
示例
1 2 3 4 5 6 7 8 9 10 11 | /* sprintf example */ #include <stdio.h> int main () { char buffer [50]; int n, a=5, b=3; n=sprintf (buffer, "%d plus %d is %d", a, b, a+b); printf ("[%s] is a string %d chars long\n",buffer,n); return 0; } |
这段代码的输出结果为:
1 | [5 plus 3 is 8] is a string 13 chars long |
由此可知,sprintf函数在此处按照指定格式实现了字符串的连接,函数的返回值为一个整型数字,代表拼接后字符串的总长度。
值得注意的地方
- 字符串str必须足够大,能够保证拼接后的字符串不会溢出。
- 这一函数在调用结束后,会自动在字符串的结束插入一个结束符’\0’。