首页
/
每日頭條
/
圖文
/
c語言逗号運算符用法
c語言逗号運算符用法
更新时间:2026-01-26 23:17:34
原文首發于同名微信公号「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
推荐阅读
生豬價格大跌養豬虧大了?
生豬價格大跌養豬虧大了?
每經記者:曾劍■相關公司:新希望(000876,SZ)■市值:1235億元(截至11月3日)■核心競争力:聚落一體化生豬養殖模式凸現成本優勢、全國領先的生物安全防控技術、行業領先的環保處理能力■機構眼中的公司:農牧行業龍頭、養殖産業鍊一體化...
2026-01-26
沈陽市第八十二中學現在叫什麼
沈陽市第八十二中學現在叫什麼
你好即将入學的新同學祝賀你将在十一中學度過三年的學習時光十一中學歡迎你的到來為了讓你順利開啟高中階段的學習生涯學校為你精心制作了這份入學指南要仔細閱讀哦入校須知防疫提示:佩戴口罩并出示健康碼,完成測溫才能入校哦!錄取通知書錄取通知書材料包括...
2026-01-26
一段真實的往事石庫門
一段真實的往事石庫門
關甯錦防線是明朝針對後金人擅長野戰,而明軍擅長守戰的特點修築的防線。關甯錦防線以山海關為後盾、甯遠為中堅、錦州為先鋒,其間築有多個堡台作為聯防據點。在甯遠之戰中袁崇煥充分利用了關甯錦防線的防禦優勢,在甯遠挫敗了努爾哈赤的大軍,一戰成名。當初...
2026-01-26
蘿蔔幹曬幹後腌制
蘿蔔幹曬幹後腌制
1、鮮菜整理挑選肉質緻密、體形肥壯的蘿蔔,去除葉、根須,洗淨,瀝幹水切成長10~12厘米、粗約2厘米見方的條。2、首次晾曬把切好的蘿蔔條放到曬場上晾曬,注意不能堆得太厚,每隔2小時翻動1次。曬至蘿蔔條重量減少約60%時,把其放到室内散熱1天...
2026-01-26
兒童積食開胃湯
兒童積食開胃湯
冬季,天氣嚴寒,為了抵禦寒冷,人們的飲食結構會偏向高熱量,高脂肪,大魚大肉等不容易消化的食物會吃的比較多,面對美味佳肴,成年人還好說,小孩總是控制不住自己的嘴,吃得停不下來。吃多了經常會出現“積食”的情況,肚子吃得鼓鼓的不消化,好幾天都不好...
2026-01-26
Copyright 2023-2026 - www.tftnews.com All Rights Reserved