在C中计算Var参数长度
问题描述:
我试图将asprintf()
移植到Windows,因为它在Linux上是GCC库函数,并且在Windows上不存在。在C中计算Var参数长度
我一直在计算var args的长度,所以我可以为它们分配内存。我尝试两种方法:
写变参到一个文件,然后取函数的结果(这是一个字节写入=变参长度的数目),因为用户将看到内部,但其傻在他的应用程序目录
使用功能
vsprintf()
用NULL作为第一个参数(写输出变量)随机数据,以便返回变参的长度,但是这一次失败,因为它适用于XP只,Windows 7的不允许写入一个NULL变量。
有关如何解决这个问题的更多想法?
太感谢你了:),我从来不知道这样的功能存在 – killercode 2011-01-19 15:45:15