首页
/
每日頭條
/
圖文
/
c語言逗号運算符用法
c語言逗号運算符用法
更新时间:2026-01-17 22:44:48
原文首發于同名微信公号「Allen5G」,歡迎大家搜索關注,歡迎轉發!

三目運算符(a ? b : c)可以作為邏輯運算的載體

規則:當a 的值為真時,返回b的值 , 否則返回c的值

實驗1:三目運算符初探

c語言逗号運算符用法(C語言學習第16篇---三目運算符和逗号表達式)1

#include <stdio.h> int main() { int a = 1; int b = 2; int c = 0; c = a < b ? a : b; (a < b ? a : b) = 3; printf("%d\n", a); printf("%d\n", b); printf("%d\n", c); return 0; }

三目運算符(a ? b : c)的返回值類型

~通過隐式類型轉換規則返回b 和 c中的較高類型

~當b 和c 不能隐式轉換到同意類型時将編譯出錯

實驗2:三目運算符的返回類型

c語言逗号運算符用法(C語言學習第16篇---三目運算符和逗号表達式)2

#include <stdio.h> int main() { char c = 0; short s = 0; int i = 0; double d = 0; char* p = "str"; printf( "%d\n", sizeof(c ? c : s) ); printf( "%d\n", sizeof(i ? i : d) ); printf( "%d\n", sizeof(d ? d : p) ); return 0; }

逗号表達式:

實驗3:逗号表達式實例

c語言逗号運算符用法(C語言學習第16篇---三目運算符和逗号表達式)3

#include <stdio.h> void hello() { printf("Hello!\n"); } int main() { int a[3][3] = { (0, 1, 2), (3, 4, 5), (6, 7, 8) }; int i = 0; int j = 0; while( i < 5 ) printf("i = %d\n", i), hello(), i ; for(i=0; i<3; i ) { for(j=0; j<3; j ) { printf("a[%d][%d] = %d\n", i, j, a[i][j]); } } return 0; }

實例4:一行代碼實現strlen函數

#include <stdio.h> #include <assert.h> int strlen(const char* s) { return assert(s), (*s ? strlen(s 1) 1 : 0); } int main() { printf("len = %d\n", strlen("Delphi")); printf("len = %d\n", strlen(NULL)); return 0; }

小結:

三目運算符返回變量的值,而不是變量本身

三目運算符通過隐式轉化規則确認返回值類型

逗号表達式按照從左到右的順序計算每個子表達式的值

逗号表達式的值為最後一個子表達式的值

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
草魚怎麼去刺做魚片呢
草魚怎麼去刺做魚片呢
今天給大家分享這道爽滑的草魚做法。需要的食材:草魚料酒白胡椒粉蛋清鹽玉米澱粉小蔥生姜步驟:1、把草魚段去魚鱗,魚肚子上的排刺用刀片除掉2、把草魚段切成小一點,切掉魚皮,再把帶紅色的魚肉去除3、然後把魚肉切成薄片,放入清水中浸泡4、把魚肉放入...
2026-01-17
蜂蜜為什麼香味不一樣
蜂蜜為什麼香味不一樣
蜂蜜是一種生活中常見的食品,吃起來香甜可口,還含有豐富的營養物質,對身體有很多好處,不僅如此,在很多描述蜂蜜的句子中都可以看到蜂蜜有花香味,那蜂蜜到底有沒有很濃的花香味道呢?蜂蜜是由蜜蜂采集植物的花蜜或分泌物,經過充分釀造而貯藏在巢脾内的甜...
2026-01-17
國産最好的三款摩托
國産最好的三款摩托
在改革開放的大浪潮下,國産車發展速度踏上快車道,用日新月異來形容絲毫不為過。從以前的一味模仿到現在的完全自主,無論是整車的品質還是外形都扶搖直上。不管是汽車還是摩托車,顔值和性價比都對國外品牌形成合圍之勢!Benelli貝納利752S貝納利...
2026-01-17
經典童年日漫
經典童年日漫
答案:1-6、2-5、3-8、4-7。對應的角色分别為《古劍奇譚》韓雲溪、《一代宗師》宮二、《唐山大地震》方登、《慶餘年》範閑。又是一年一度的六一國際兒童節,在影視劇中也有這麼些小演員,他們經常扮演着主角小時候的角色。一個個成年角色因兒童角...
2026-01-17
蘋果與安卓有哪些區别
蘋果與安卓有哪些區别
安卓和iOS,一個開源開放,一個閉源更安全。說看對方都不順眼。蘋果系統基于Unix開發(收費),安卓系統則基于類Unix的Linux系統上開發(免費)。從表面看(都說免費的沒好貨),你們怎麼看?蘋果13proman先說說蘋果:1.蘋果采用不...
2026-01-17
Copyright 2023-2026 - www.tftnews.com All Rights Reserved