gpt4 book ai didi

objective-c - 我如何将 NSLog 转换为字符串?

转载 作者:行者123 更新时间:2023-12-05 06:42:24 25 4
gpt4 key购买 nike

我有以下代码,

#define DLog(fmt, ...) NSLog((@"%s [Line %d] " fmt), __PRETTY_FUNCTION__, __LINE__, ##__VA_ARGS__);

如何将 NSLog 输出转换为字符串以便传递到日志参数?见下文。

#define DLog(fmt, ...) [MyClass log:NSLogString];

最佳答案

您不能“...将 NSLog 输出转换为字符串”。 NSLog 将其输出发送到标准输出。它执行文件操作。

您应该能够使用这样的代码:

void DLog(NSString* format, ...)
{
va_list params_list;

//Extract the variable-length list of parameters
va_start(params_list, format);

NSString *outputString = [[NSString alloc] initWithFormat: format
arguments: params_list];

//Now do what you want with your outputString

//Now clean up the var_args.
va_end(params_list);
}

神奇的是 NSString initWithFormat:arguments: 方法,它接受从 var_args 中提取的 params_list 并返回一个字符串。这就是您想要的。

关于objective-c - 我如何将 NSLog 转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37286099/

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