gpt4 book ai didi

c++ - 可变参数被破坏/无效的原因

转载 作者:行者123 更新时间:2023-11-30 01:43:59 24 4
gpt4 key购买 nike

<分区>

我有一个包装函数,它允许我通过编写一行代码而不是 3 行代码来实现 sprintf 的结果。

void output(const tstring& format, ...)
{
va_list args;
va_start(args, format);

const int len = _vsctprintf(format.c_str(), args) + 1;
TCHAR* buf = new TCHAR[len];

_vstprintf(buf, format.c_str(), args);
OutputDebugString(buf);

delete[] buf;
}

我的问题:可变参数已损坏。

例如;

output(_T("%d\n"), 1); // outputs: -858993460
output(_T("%d\n"), 2); // outputs: -858993460

此错误的原因是什么,我该如何解决?

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