本文介绍了Snprint tf(空,0,...);行为是否标准化?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在Linux上,它返回要打印的字符数。
这是标准化行为吗?
推荐答案
是。
从7.21.6.5开始,n1570(C11草稿):
找到未知数据的长度是一种有用的方法,您可以首先为其找到必要的长度,然后分配准确的内存量。典型的用例是:
char *p;
int len = snprintf(0, 0, "%s %s some_long_string_here_", str1, str2);
p = malloc(len + 1);
snprintf(p, len + 1, "%s %s some_long_string_here", str1, str2);
这篇关于Snprint tf(空,0,...);行为是否标准化?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!