Windows 用户定义的 printf 输出转换?

发布于 2024-10-08 06:59:05 字数 254 浏览 3 评论 0原文

我想定义自己的 printf 输出转换:

printf("%T", widget);

对于 gcc,我可以使用 printf.h ,如图所示 此处

如何在 Windows (Visual Studio) 上执行此操作?

I'd like to define my own printf output conversions:

printf("%T", widget);

For gcc, I can use printf.h as shown here.

How can I do this for Windows (Visual Studio)?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

旧城烟雨 2024-10-15 06:59:05

不要让 printf 进行转换,而是为您的对象提供一个转换为字符串的函数,并让 printf 正常输出该字符串。

Rather than letting printf do the conversions, provide your object with a function that converts to a string and let printf output the string as normal.

染火枫林 2024-10-15 06:59:05

这是一个“坏主意”(tm)——它要容易得多。编写普通函数来进行转换更明智、更可移植、更易于维护。例如(假设小部件有一个 id 和一个名称):

void PrintWidget( Widget * w ) {
    printf( "widget id %d name %s " , w->id, w->name );
}

This is a "bad idea" (tm) - it is much, much easier. more sensible, more portable and more maintainable to write an ordinary function to do the conversion. For example (assuming widget has an id and a name):

void PrintWidget( Widget * w ) {
    printf( "widget id %d name %s " , w->id, w->name );
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文