ASPRINTF - Linux手册页
时间:2019-08-20 17:59:53 来源:igfitidea点击:
Linux程序员手册 第3部分
更新日期: 2019-03-06
名称
asprintf,vasprintf-打印到分配的字符串
语法
#定义_GNU_SOURCE / 参见feature_test_macros(7)/
#包括
int asprintf(char ** strp,const char * fmt,...);
int vasprintf(char ** strp,const char * fmt,va_list ap);
说明
函数asprintf()和vasprintf()与sprintf(3)和vsprintf(3)类似,不同之处在于它们分配的字符串足够大以容纳包含终止空字节(aq \ 0aq)的输出,并返回指向的指针。通过第一个参数。该指针应传递给free(3)以在不再需要时释放分配的存储。
返回值
成功后,这些函数将返回打印的字节数,就像sprintf(3)一样。如果无法进行内存分配,或者发生其他错误,则这些函数将返回-1,并且strp的内容未定义。
属性
有关本节中使用的术语的说明,请参见attribute(7)。
Interface | Attribute | Value |
asprintf(),vasprintf() | Thread safety | MT-Safe locale |
遵循规范
这些函数是GNU扩展,不在C或POSIX中。它们也可以在* BSD下获得。 FreeBSD实现在出错时将strp设置为NULL。
出版信息
这个页面是Linux手册页项目5.08版的一部分。有关项目的说明、有关报告错误的信息以及此页面的最新版本,请访问https://www.kernel.org/doc/man-pages/。