我对c没有很好的经验...我只是想学习一些在c中实现的实际场景......例如我如何在C代码中实现以下内容......
当x = 1时,y = 1 当x!= 1时,y = 0
主要的是......
输出 y 在输入 x 更改时发生更改,并且如果输入中的任何更改1,则必须保持 1秒的状态它必须保持其先前的状态。
请任何人帮我这个...并且请帮助我如何批评这种类型的逻辑..请
答案 0 :(得分:2)
如果x
没有变化,你可以负担得起等待,那么
volatile int x;
int old_x, tmp = x;
while (1){
y = ((old_x = tmp) == 1);
Sleep(1000);
while(old_x == (tmp = x));
}
如果您在更改时有任何事件或中断,可以在不繁忙等待的情况下完成。
答案 1 :(得分:0)
一旦弄清楚如何处理IO和时序,这些就是相关测试的可能性:
y = (x == 1 ? 1 : 0);
或:
if (x == 1)
y = 1;
else
y = 0;
或:
y = 0;
if (x == 1)
y = 1;