百度
360搜索
搜狗搜索

while 1,c语言 while1 为什么是无限循环?详细介绍

本文目录一览: while(1) 什么意思 while(i--)什么意思?

while语句的原型是while(表达式)语句,当表达式为非0值时,执行while语句中的嵌套语句。
1.while(1)其中1代表一个常量表达式,它永远不会等于0。循环会一直执行下去。除非你设置break等类似的跳出循环语句循环才会中止。
2.while(i--)其中i是一个变量,因此表达式i--有不同的值,依次递减,i--是先取值后减,--i先加后取值,所以i--的值同未执行该自减运算时的i相等。因此当i为0时,循环会跳出。
扩展资料一般形式如下:while(表达式)
其中执行过程如下:
(1)计算while后面括号里表达式的值,若其结果非0,则转入(2),否则转(3)
(2)执行循环体,转(1)
(3)退出循环,执行循环体下面的语句。
由于是先执行判断后执行循环体,所以循环体可能一次都不执行。循环体可以为空语句“;”。
在C语言程序中,一共有三种程序结构:
1.顺序结构,从头到尾一句接着一句的执行下来,直到执行完最后一句;
2.选择结构,到某个节点后,会根据一次判断的结果来决定之后向哪一个分支方向执行;
3.循环结构,循环结构有一个循环体,循环体里是一段代码。对于循环结构来说,关键在于根据判断的结果,来决定循环体执行多少次。
参考资料:百度百科-C语言循环控制语句
while语句的原型是while(表达式)语句,当表达式为非0值时,执行while语句中的嵌套语句。
1.while(1)其中1代表一个常量表达式,它永远不会等于0。循环会一直执行下去。除非你设置break等类似的跳出循环语句循环才会中止。
2.while(i--)其中i是一个变量,因此表达式i--有不同的值,依次递减,i--是先取值后减,--i先加后取值,所以i--的值同未执行该自减运算时的i相等。因此当i为0时,循环会跳出。
很容易混淆的是把i--的值误认为i执行自减后的值。
扩展资料:
单片机中while(1)有两种用途:
while(1); 意义:这是一个死循环,代码不再向下执行。用途:
一般在调试代码时,为了检测一部分代码是否OK,防止后面的代码干扰执行结果,会在观测点加上while(1);
有些代码检测到运行错误时,会抛出错误(打印、设置错误码),然后进入while(1);
机器需要复位时,停止喂看门狗,进入while(1); 迫使看门狗超时,产生硬件复位
while( 1 ) { 代码 }; 意义:这里将会重复执行{}中的代码用途:
1.单片机在不使用操作系统时,主程序一般都使用这种架构
2.操作系统中的进程,执行任务时,有些也会使用这种架构
3.{}中的代码不停地检测某个条件,当条件符合时,跳出该循环,继续向下执行
4.停留在此,等待中断。在单片机中使用while(1),大部分还是为了防止程序跑飞,因为很多时候执行完某段程序后单片机的程序指针PC并不会停止,仍然会继续从ROM中读取指令并执行,进而出现不确定的结果,加个while(1)就能让程序在执行完后在原地循环,相当于停在原地,防止跑飞。
参考资料:百度百科-C语言while的用法
while语句的原型是while(表达式)语句,当表达式为非0值时,执行while语句中的嵌套语句。
那么while(1)其中1代表一个常量表达式,他永远不会等于0。所以,循环会一直执行下去。除非你设置break等类似的跳出循环语句循环才会中止
while(i--)其中i是一个变量,因此表达式i--有不同的值,依次递减,i--是先取值后减,--i先加后取值,所以i--的值同未执行该自减运算时的i相等。因此当i为0时,循环会跳出
很容易混淆的是把i--的值误认为i执行自减后的值,可以编个小程序验证下
#include

#include

using namespace std;

int main()

{

int i=1;

while(i--)//此时i=0

{

i--;//执行该语句i为-1

break;

}

cout<
<i;
system("pause");

}

输出为-1,说明执行了循环内i--的语句

希望能帮到你..

我是一名多年的单片机工程师,下面的讲解你可以参考一下。

原句是下面这样的。

while(n)

{

语句1;

语句2;

语句n;

}

讲解:

1 while(1)是无限循环花括号里面的语句。

比如:

while(1)

{

a=b;

c=d;

}

这样语句a=b; c=d;,从上到下执行完后,然后又回到起始点,再从上到下执行,如此无限循环。

2 while(i--)。

假设i=50,每执行完花括号里面一次,i就减1,这个就是符号“--”的原理,“--”名字叫做自减,直到i=0就退出while花括号里面的语言,相当于执行while花括号里面的语句50次。

比如:

i=50

while(i--)

{

a=b;

c=d;

}

e=g;

这样语句a=b; c=d;,从上到下执行完后,然后又回到起始点,再从上到下执行,如此循环50次后,就退出while语句,往下面执行e=g。

3 如果你想学习更多的C语言程序与电路知识,百度一下“17个实验学会单片机”,就可以看到教程了,感兴趣的朋友可以找一下。

while语句的原型是while(表达式)语句,当表达式为非0值时,执行while语句中的嵌套语句。

while(1)其中1代表一个常量表达式,它永远不会等于0。循环会一直执行下去。除非你设置break等类似的跳出循环语句循环才会中止。

而while(i--)其中i是一个变量,因此表达式i--有不同的值,依次递减,i--是先取值后减,--i先加后取值,所以i--的值同未执行该自减运算时的i相等。因此当i为0时,循环会跳出。

while语句的一般形式为:

while(表达式)语句

其中表达式是循环条件,语句为循环体。

while语句的语义是:计算表达式的值,当值为真(非0)时, 执行循环体语句。

while(1)其中1代表一个常量表达式,while(1) 表示无限循环,除非你设置break等类似的跳出循环语句循环才会中止

while(i--)其中i是一个变量,因此表达式i--有不同的值,依次递减,i--是先取值后减,--i先加后取值,所以i--的值同未执行该自减运算时的i相等。

扩展资料:while(1) 表示无限循环。

while的语法格式为 :

while(condition){//do something 1}//do something 2

condition 为循环条件,每次判断condition是否为真,为真时执行while循环体中的语句块(代码中块1);为假时结束循环,执行后续语句(代码中块2)。

这里condition为1 表示条件永远为真,一直执行循环体内语句。为了结束循环,可以在循环体内满足某些特定条件使用break跳出循环。

如下:

while(1){//do somethingif(condition){break;}}

参考资料:百度百科-while
</i;

while(1);什么意思?

while(1) 中的1表示真,这个while总是成立。while(0)中的0表示假,这个while总是不成立的。if的使用说明:#If.Then.#Else 指令的作用与 If.Then.Else 语句相同,其差异在于 #If、#Else、#ElseIf,及 #End If 指令没有单独成行的形式,也就是说,在指令所在的那一行,不能有其他代码出现。
扩展资料:
while影响因子一般来说影响因子高,期刊的影响力就越大。对于一些综合类,或者大项的研究领域来说,因为研究的领域广所以引用率也比较高。比如,生物,和化学类的期刊,这类期刊一般情况下就比较容易有较高的影响力。
影响因子虽然可在一定程度上表征其学术质量的优劣,但影响因子与学术质量间并非呈线性正比关系,比如不能说影响因子为5.0的期刊一定优于影响因子为2.0的期刊,影响因子不具有这种对学术质量进行精确定量评价的功能。
国内部分科研机构,在进行科研绩效考评时常以累计影响因子或单篇影响因子达到多少作为量化标准,有的研究人员可能因影响因子差0.1分而不能晋升职称或评定奖金等,这种做法绝对是不可取的。

c语言中,while(1)是什么意思?

c 语言中: 1 表示 逻辑值 真, 0 表示 逻辑值 假。
while(1) 小括号里,一般写 逻辑表达式,(逻辑表达式的计算结果 要么是真,要么是假),
如果是真,就执行循环体,如果是假就 不执行循环体。现在 小括号里 是 1, 也就是 “真” (TRUE)
所以
while(1){
....
....if (...) break;
....
}
就是无限循环地执行循环体。直到循环体内有别的控制条件,中止循环 或 跳出循环。否则就是死循环。
就是死循环,不执行break;不会跳出
c中非零即为真,所以1就表示真,当然你也可以写成其他的非零数。
c语言中 0为假 非0为真 while(1) 表示循环条件一直为真 所以 无限循环 执行 while(1) 所管理的语句
表示循环不会中断,会一直进行下午。
表示循环恒成立。
c 语言中: 1表示逻辑值真, 0表逻辑值假,while(1) 小括号里,一般写逻辑表达式。
C语言广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。
扩展资料
C语言的运算符主要用于构成表达式,同一个符号在不同的表达式中,其作用并不一致。下面按计算的优先顺序,分别说明不同作用的表达式。需要特别指出,在C语言标准中,并没有结合性的说法。
相同优先级运算符,从左至右依次运算。注意后缀运算优先级高于前缀。因此 i 应解释为 (i )。
而与或非的运算优先级都不一样,因此a && b || b && c解释为(a && b) || (b && c)
合理使用优先级可以极大简化表达式。

while(1)如何用?

while(1){}; 就是不断地重复执行循环体。通常,循环体内会有至少一个条件判断语句,即,满足什么条件,循环结束。例如: x=1;y=0; while(1){ y = y x; x ; if (x > 100) break; }; printf("%d",y); 循环体里做累加,x 从 1 开始,2,3,4,....直到 x =101 ( 满足条件x > 100) break; 执行 break,就退出循环了。也就是借书 while(1){} 的无限循环。

c语言中的循环while(1)括号中的1是什么意思?

while
当中是判断条件
1其实就是表面上的常数值。用于逻辑
就是逻辑真
于是
这里就是while条件恒为真
也就是说
while(1)就是一个死循环。
一般这么写
在循环体中都会做判断
在一定条件下break;
while(1),1表示真,所以while(1)表示永远循环下去,一般在while(1)的循环体内都有break
或者return
跳出循环

c语言 while1 为什么是无限循环?

在c语言的世界里除了0是false,其他的都是ture。
看你纠结的真蛋疼:while(1){ }语句,只要不是 { }内的语句产生的终止循环,while是不会跳出来的,当然中断例外。
while(1){ } 语句判断条件是死循环是没错,但也并非一定是死循环,也有可能运行到某个时刻就跳出while循环了。比如 while(1)里面运行到了break,或者return,那么就会终止当前的while语句,结束循环。上面说的中断,只是一时跳出while语句,执行其他语句,执行完以后仍然会返回while(1)继续循环。
while循环的用法是
while(判断条件)
如果判断条件为真,则实行循环内部代码;
如果判断条件为假,则跳出循环,执行后续代码。
而判断条件为真的时候,值是1;判断条件为假的时候,值是0
故而,while 1是无限循环
因为while()在判断表达式为true时会循环执行。
在C语言中,并没有bool类型,只有宏TRUE(1)和FALSE(0)。除了0以外的任何数,在C语言中都表示TRUE
在C 中,才有专门的bool类型true和false
因为while语句括号内只要不是0就会进行循环,负数或正数都会进行循环。所以while(1)会一直循环,如果要跳出死循环可以用break语句
c里面
数字:0为假,一切非0值都是“真”
while只认真和假,1是数字并且非0,那就是真咯
在c语言的世界里除了0是false,其他的都是ture。
while(1){ } 语句判断条件是死循环是没错,但也并非一定是死循环,也有可能运行到某个时刻就跳出while循环了。
比如 while(1)里面运行到了break,或者return,那么就会终止当前的while语句,结束循环。上面说的中断,只是一时跳出while语句,执行其他语句,执行完以后仍然会返回while(1)继续循环。
扩展资料:
语法
Pascal
while

阅读更多 >>>  switch语句是怎么执行的,switch语句的运用

do

意为当条件符合时,接着做下面的语句;不符合时,退出循环。

C语言

do

while(

);

while(

)

;

C

while(

)

;

do

while(

);

Java

while(

) {

}

do {

} while(

);

二者的区别是do-while最少会被执行一次。

循环中可以使用continue结束当前循环,回到循环开始处开始下一次循环。也可以用break跳出整个循环。

参考资料来源:百度百科-while (循环语句及英文单词)













单片机C语言中的while(1)是什么意思

2. 有些代码检测到运行错误时,会抛出错误(打印、设置错误码),然后进入while(1);
3. 机器需要复位时,停止喂看门狗,进入while(1); 迫使看门狗超时,产生硬件复位
while( 1 ) { 代码 }
意义:这里将会重复执行{}中的代码用途:
1. 单片机在不使用操作系统时,主程序一般都使用这种架构2. 操作系统中的进程,执行任务时,有些也会使用这种架构
while
(1)是死循环的意思。
就是说单片机执行到这里就结束了,while
(1)是给单片机一些事情干。否则单片机就又开始重新初始化了。

while(1)放在语句最后面有什么作用?

while语句的原型是while(表达式)语句,当表达式为非0值时,执行while语句中的嵌套语句。那么while(1)其中1代表一个常量表达式,他永远不会等于0。所以,循环会一直执行下去。除非你设置break等类似的跳出循环语句循环才会中止。
1就是永远为真,所以说while(1)就是个死循环,我们需要程序不断回到开始或者某一点开始执行,我们就会使用一个while(1)循环。
单片机中while(1)有两种用途,
while(1);
意义:这是一个死循环,代码不再向下执行。
用途:
1.
一般在调试代码时,为了检测一部分代码是否OK,防止后面的代码干扰执行结果,会在观测点加上while(1);
2.
有些代码检测到运行错误时,会抛出错误(打印、设置错误码),然后进入while(1);
3.
机器需要复位时,停止喂看门狗,进入while(1);
迫使看门狗超时,产生硬件复位
while(
1
)
{
代码
}
意义:这里将会重复执行{}中的代码
用途:
1.
单片机在不使用操作系统时,主程序一般都使用这种架构
2.
操作系统中的进程,执行任务时,有些也会使用这种架构
3.
{}中的代码不停地检测某个条件,当条件符合时,跳出该循环,继续向下执行
我们在单片机中使用while(1),大部分还是为了防止程序跑飞,因为很多时候执行完某段程序后单片机的程序指针PC(就是程序指针)并不会停止,仍然会继续从ROM中读取指令并执行,这样一来可能会出现程序跑飞的情况,进而出现不确定的结果,我们加个while(1)就能让程序在执行完后在原地循环,相当于停在原地,防止跑飞。
你修改问题,这样我就不是第一个回答的了……
第一次回答时间:2013-05-16
21:31
第二次应LZ修改问题而修改答案:2013-5-17
06:32
楼下勿抄袭改编……
while(1){printf("我不会抄袭");if(
you
==
2)break;}

C语言中 while(1)是什么意思

表示死循环、一直执行while(1)循环体的程序,直到遇到break才跳出循环体、在循环体内设置条件来执行break就可跳出啦
那天我看到书上这样写我还是不懂,于是翻到前面,才发现,while(这里是逻辑判断,是真1就循环是假0就不执行,)不信你随便找一个while后面括号里的表达式进行计算,肯定结果不是0就是1,所以这里出现1表示循环可以进行。
死循环
while(true)
while(1)是一个循环,如果不遇到break之类的就成死循环了,括号中的1表示条件为真时循环,如果是0则表示条件为假时循环。

单片机C语言程序中:while(1)是什么意思呀?while(2)行不行?

while(1),就是条件永远为真,其实非0就为真,所以while(2)也可以,不过最好写1.
C语言里规定区分大小写的
比如定义一
本来只要是个非零的整数就行。但是从编程规范来讲,1的意义明确,容易理解,可读性好,要是换成其他数字,会带来理解上不必要的麻烦,很影响可读性,尤其在对程序进行差错的时候。程序设计中,可读性是很重要的。
while(1)表示无限循环的执行它{ }内的语句,如果写成while(2)、while(3)等效果是一样的,操作方法如下:
1、首先新建一个项目,添加头文件,如图所示。
2、接着输入main函数,如图所示。
3、然后定义一个数组(长度为:5),如图所示。
4、接着使用while循环把数组打印出来,如图所示。
5、然后在键盘上,按快捷键F5运行程序,打印出结果,如图所示,就完成了。

网站数据信息

"while 1,c语言 while1 为什么是无限循环?"浏览人数已经达到18次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:while 1,c语言 while1 为什么是无限循环?的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!