标题:
C语言while(--t);语句求解
[打印本页]
作者:
mnx
时间:
2021-7-22 21:43
标题:
C语言while(--t);语句求解
void delay(unsigned int t)
{
while(--t);
}
这个语句里面while(--t)可与更改吗?可以换把--t换掉吗?如果可以应该怎么换?
作者:
keifeng
时间:
2021-7-22 22:52
可以更换啊,这个里面就是延时,你可以更换成for(;t>0;t--);
作者:
lkc8210
时间:
2021-7-22 23:34
当然可以换,但目的是什么?
作者:
地狱火
时间:
2021-7-23 00:05
可以换啊
作者:
夏日阳光
时间:
2021-7-23 08:30
--t的意思就是每循环一次,t值减少1
作者:
sustlixin
时间:
2021-7-23 08:51
可以换
while(--t)一句程序里做了两件事,t自减1,并判断t是否大于0,
如果你想改,可以改成下面这样(供参考)
while(判定真假的条件)
[修改判定条件的内容]
作者:
晚安小宝贝丶
时间:
2021-7-23 13:33
--t即是t自减运算,while还进行是否大于0判断;可以进行对t赋初值,运用for语句来完成定时的延时,希望能够帮到你
作者:
Leoon_Miss
时间:
2021-7-23 14:47
这个是使用while的循环延时才可以直接使用for循环完成
作者:
dwb123
时间:
2021-7-23 18:42
这个完全可以直接改的,要换一起换。看系统时钟,比如1MHz,你把 t 变成1000,就相当于延迟1ms
作者:
442502587
时间:
2021-7-23 19:58
当然可以啊,但是你要做什么
作者:
Hephaestus
时间:
2021-7-24 21:25
注意下你的代码只在C51下面可用,因为该编译器设计者认为用C51的都是不懂volatile这个关键字的傻孩子。换个编译器比如同样被小白们喊成Keil的RVMDK,楼主位代码会直接优化成t=0;因为t最后一定会等于0。现在的编译器比你想象的聪明太多了。
作者:
2627687547
时间:
2021-7-28 11:33
这是一个循环,看你具体想让他循环多久
作者:
isyido
时间:
2021-7-28 12:33
这是基础语法啊!
作者:
ouyangyang
时间:
2021-7-28 14:40
可以更改,可以用for循环语句
作者:
云雀在天
时间:
2021-7-28 20:57
void delay(uint i) { while(i--); }
作者:
云雀在天
时间:
2021-7-28 20:58
可以换成这样void delayms(unsigned int ms) { unsigned char i=100,j; for(;ms;ms--) { while(--i) { j=10; while(--j); } } }
作者:
云雀在天
时间:
2021-7-28 20:58
可以改成这样void delayms(unsigned int ms)
{
unsigned char i=100,j;
for(;ms;ms--)
{
while(--i)
{
j=10;
while(--j);
}
}
}
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1