性无码一区二区三区在线观看,少妇被爽到高潮在线观看,午夜精品一区二区三区,无码中文字幕人妻在线一区二区三区,无码精品国产一区二区三区免费

一口Linux
認證:優(yōu)質(zhì)創(chuàng)作者
所在專題目錄 查看專題
C語言中的短路現(xiàn)象
看了這幾個C語言例子,你一定和我一樣連說5個臥槽,聲音一次比一次大
什么是狀態(tài)機?用C語言實現(xiàn)進程5狀態(tài)模型
C語言操作時間函數(shù),實現(xiàn)定時執(zhí)行某個任務小程序
C語言:static的一個很實用的小技巧
C語言static關鍵詞詳解
作者動態(tài) 更多
linux系統(tǒng)監(jiān)控工具小神器:btop
23小時前
有沒有權貴開后門讓子女做軟件開發(fā)人員?
1星期前
一文包你學會網(wǎng)絡數(shù)據(jù)抓包
03-15 09:26
C語言初學者編程水平上不來?不妨嘗試這10個C語言例子
03-14 20:31
Linux rootfs:如何開機就自動添加某個用戶?
03-09 22:18

C語言中的短路現(xiàn)象

短路現(xiàn)象1

比如有以下表達式

 a && b && c

只有a為真(非0)才需要判斷b的值;只有a和b都為真,才需要判斷c的值。

舉例

求最終a、b、c、d的值。

main(){ int a,b,c,d;  a = 0;  b = 1;  c = 2; d = a++ && b++ && --c;  printf("a=%d b=%d c=%d d=%d\n",a,b,c,d);}

因為a++是先判斷a的值再自加,而a初始值為0, 所以(a++)為假,由短路現(xiàn)象可知&&后面式子b++和--c就都不會執(zhí)行;對于賦值語句,是先將a的值賦值給d,然后再自加,所以d的值為0,a最終為1。

執(zhí)行結果:

短路現(xiàn)象2

比如有以下表達式

a || b || c

只要a為真(非0)就不必判斷b和c;只有a為假,才需要判斷b的值;只有a和b都為假,才有必要判斷c的值。

舉例

求最終a、b、c、d的值;

main(){ int a,b,c,d;  a = 0;  b = 1;  c = 2; d = a++ || b++ || --c;  printf("a=%d b=%d c=%d d=%d\n",a,b,c,d);}

因為a++是先判斷a的值再自加,而a初始值為0, 所以(a++)為假,由短路現(xiàn)象可知,還需要繼續(xù)判斷 || 后面的表達式b++,b++要先判斷b的值,b為1,所以b++為真,由短路現(xiàn)象可知,后面的式子--c就不在執(zhí)行;對于賦值語句,不再是將a的值賦值給d,而是將b先賦值給d然后a和b再自加,所以d的值為1,a最終為1,b最終為2。

執(zhí)行結果:

 

聲明:本內(nèi)容為作者獨立觀點,不代表電子星球立場。未經(jīng)允許不得轉載。授權事宜與稿件投訴,請聯(lián)系:editor@netbroad.com
覺得內(nèi)容不錯的朋友,別忘了一鍵三連哦!
贊 0
收藏 1
關注 181
成為作者 賺取收益
全部留言
0/200
  • zhangjiantao 2021-01-21 21:18
    介紹下這種短路現(xiàn)象的作用和容易引起的異常就完美了
    回復 1條回復