gpt4 book ai didi

android - Android 上的 _vscprintf 等效?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:47:29 26 4
gpt4 key购买 nike

_vscprintf 在 Android 上不可用。此外 vsprintf(NULL, fmt, ap) 不起作用(产生段错误),因此似乎无法计算 vsnprintf 成功所需的缓冲区大小?

安卓sources表示 __android_log_print 函数只是使用 vsnprintf 将字符串截断为 1024...

您如何处理这种情况?

最佳答案

C99 标准的 [7.19.6.13] 节——vsprintf 函数没有声明输出缓冲区可以是 NULL

你可能想使用 vsnprintf:

int len = vsnprintf(NULL, 0, fmt, ap)

如果调用成功,返回值是在缓冲区足够大的情况下本应写入的字符数,不包括 NUL 终止符。这类似于 _vscprintf,它也不包括 NUL 终止符。

关于android - Android 上的 _vscprintf 等效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7825648/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com