mih*_*iha 4 c printf android android-ndk
_vscprintf
在Android上不可用.也vsprintf(NULL, fmt, ap)
不起作用(产生seg故障),所以似乎无法计算vsnprintf成功所需的缓冲区大小?
Android 源代码表明__android_log_print
函数只是使用vsnprintf将字符串截断为1024 ...
你如何处理这种情况?
Dan*_*ien 12
[7.19.6.13]部分 - vsprintf
C99标准的功能 - 未说明输出缓冲器可能是NULL
.
您可能想要使用vsnprintf
:
int len = vsnprintf(NULL, 0, fmt, ap)
Run Code Online (Sandbox Code Playgroud)
如果调用成功,则返回值是缓冲区足够大时将写入的字符数,不包括NUL终止符.这就像_vscprintf
,它的计数中也不包括NUL终止符.
归档时间: |
|
查看次数: |
3687 次 |
最近记录: |