while(1) 和 for(;;)有什么区别?
良许Linux
共 2183字,需浏览 5分钟
· 2022-01-01
作者 | strongerHuang 微信公众号 | 嵌入式专
要回答这个问题,其实你各自编写一段while(1) 和 for(;;)的代码,编译对比一下代码大小和汇编文件,你就大概知道了。
while(1)和for(;;)语法表达
while( 表达式 )
{
语句
}
其中:
表达式:是循环条件
语句:为循环体。
for(表达式1; 表达式2; 表达式3)
{
语句
}
1.先求解表达式1
2.求解表达式2
若其值为真(非0),则执行for语句中指定的内嵌语句,然后执行下面第3)步;
若其值为假(0),则结束循环,转到第5)步。
3.求解表达式3
4.转回上面第2)步继续执行。
5.循环结束,执行for语句下面的一个语句。
while(1)和for(;;)异同点
验证while(1)和for(;;)差异
// filename: while.c
int main(int argc, char const *argv[])
{
while(1)
{}
return 0;
}
// filename: for.c
int main(int argc, char const *argv[])
{
for(;;)
{}
return 0;
}
gcc -S -o while.s while.c
gcc -S -o for.s for.c
; filename: whiles
.file "while.c"
.text
.globl main
.type main, @function
main:
.LFB0:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
movl %edi, -4(%rbp)
movq %rsi, -16(%rbp)
.L2:
jmp .L2
.cfi_endproc
.LFE0:
.size main, .-main
.ident "GCC: (GNU) 9.3.0"
.section .note.GNU-stack,"",@progbits
; filename: for.s
.file "for.c"
.text
.globl main
.type main, @function
main:
.LFB0:
.cfi_startproc
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_offset 6, -16
movq %rsp, %rbp
.cfi_def_cfa_register 6
movl %edi, -4(%rbp)
movq %rsi, -16(%rbp)
.L2:
jmp .L2
.cfi_endproc
.LFE0:
.size main, .-main
.ident "GCC: (GNU) 9.3.0"
.section .note.GNU-stack,"",@progbits
推荐阅读:
5T技术资源大放送!包括但不限于:C/C++,Linux,Python,Java,PHP,人工智能,单片机,树莓派,等等。在公众号内回复「1024」,即可免费获取!!
评论
while(1) 和 for(;;) 有什么区别?
这是「进击的Coder」的第 551 篇技术分享作者:strongerHuang来源:嵌入式专栏“ 阅读本文大概需要 5 分钟。 ”有读者问题了类似这样的问题:while(1) 和 for(;;) 它们不都是无限循环吗,作用应该一样啊,它们到底有什...
FightingCoder
0
CRM和SCRM有什么区别?
如果说,CRM对于企业来说是一个贤内助,帮助企业管理客户信息、合理利用商机、理清合同流程……把内务管得井井有条。
那么,SCRM对于企业来说就是一个“交际花”,管理着企业在社交媒体上的形象和名誉,加强与客户交流互动,维持在客户群体中的情感连接和交流纽带……把社交玩得风生水起。
这两方面无疑都是在这个新媒体时代,企业急需具备的能力。因此,CRM和SCRM的概念也随之流行起来。
然而,其实SCRM也叫作Social CRM,简单来说就是Social进阶版的CRM。
那么我们就来看一看,CRM和SCRM的最大的不同:
CRM与客户沟通的方式
从图中可以看到CRM和客户的沟通还是比较单一的,绝大多数是以交易导向的单向对话。
韩梅梅
0
CRM和SCRM有什么区别
近年来,市场上涌现了很多CRM和SCRM的产品,大家可能很困惑,到底CRM和SCRM是什么呢?CRM与SCRM只有一字之差,差异又在哪里呢?
首先我们要提到一家美国的老牌咨询公司Gartner魔力象限,主要是做IT信息全产业链以及咨询服务。我们通常知道的ERP、OA等等的定义都是由Gartner这家公司来定义,在不同的业务领域相关的IT产品,哪家更具有代表性,哪家可能更符合你的需求,都是由Gartner来评定推荐。所以可以看到Gartner里面会使用leader、follow等4个象限里面来定义在不同的领域、不同的使用场景中哪家的产品更好用一些。从另一个角度来讲,Gartner和专门做企业信誉评级的世界三大信誉评级机构标准普尔、穆
KnightCRM
0