gpt4 book ai didi

c - 在公共(public)上下文中使用循环时需要简化逻辑

转载 作者:行者123 更新时间:2023-11-30 21:34:14 24 4
gpt4 key购买 nike

我的问题很简单而且愚蠢,请原谅。

我有一个类似的代码:

#define num 8
if (clock_mhz == 80)
{
for(i = 1, i < num; i++)
{
uint32_t temp_divisor = div_coefficient * bitrate;
temp_brr = (clock_mhz + (temp_divisor - 1)) / temp_divisor;
BRR = temp_brr - 1;
divisor = i;
result = 1;
break;
}
}
else
{
for(i = 0, i < num; i++)
{
uint32_t temp_divisor = div_coefficient * bitrate;
temp_brr = (clock_mhz + (temp_divisor - 1)) / temp_divisor;
BRR = temp_brr - 1;
divisor = i;
result = 1;
break;
}
}

我尝试添加一些逻辑来解决此问题,如下所示,但要求使用 ; 结束 for 循环

#define num 8
if(clock_mhz == 80)
{
for(i = 1 , i < num; i++)
}
else
{
for(i = 0, i < num; i++)
}
{
//Code under any one for loop based on condition
}

请帮助我编写这个简单而智能的代码。

最佳答案

除了 i 的初始值之外,您的循环是相同的(除非我错过了某些内容)。您可以合并它们:

int initi;

if (clock_mhz == 80)
initi = 1;
else
initi = 0;

for (i = initi; i < num; ++i) {
/* loop as before */
}

关于c - 在公共(public)上下文中使用循环时需要简化逻辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38304682/

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