gpt4 book ai didi

c - 减少 C 中的重复

转载 作者:行者123 更新时间:2023-11-30 20:25:48 24 4
gpt4 key购买 nike

我没有包含任何代码,因为它对我的问题并不重要,但假设我有一个类似 if (g_sound == 1){printf("\a");} (当然,我只是使用一个较短的示例),我如何在我的程序中使用这段代码,同时又没有那么多重复性?是否有某种类型的变量可以链接到并执行该变量中的代码?所以我的一半代码并不是一遍又一遍地做同样的事情......非常感谢所有帮助!更新:感谢大家的有用评论,我发现使用函数是最佳选择,因为我需要执行 20 行代码!再次感谢!

最佳答案

如果语句真的那么简单(或至少是最佳的),那么使用宏:

#define THIS_IS_NOT_A_FUNCTION(X) if (x == 1){ printf ("\a");}

然后宏的使用方式如下:

// do some tedious task that I can't be bother typing out fully:
THIS_IS_NOT_A_FUNCTION(g_sound);

正如 David C. Rankin 在他的评论中指出的那样,宏在预编译时扩展到其定义的值,因此没有调用函数的开销。缺点是如果宏使用得太随意,代码可能会变得不可读。

如果该语句是一个复杂的操作,则可能需要编写一个函数并调用它。

关于c - 减少 C 中的重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27495111/

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