首页
/
每日頭條
/
圖文
/
c語言逗号運算符用法
c語言逗号運算符用法
更新时间:2026-01-28 17:23:44
原文首發于同名微信公号「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
推荐阅读
買洗衣機是滾筒好還是全自動的好
買洗衣機是滾筒好還是全自動的好
現在很多的家庭都會購買洗衣機,對于洗衣機的購買要注意選擇合适的款式,滾筒洗衣機看起來是很多家庭會選擇的目的,也是為了追求時尚和潮流,但是滾筒洗衣機真的合适我們嗎?買洗衣機别再選滾筒的,聽售後人員良心分析,終于明白其中利弊。一、來看看選擇怎麼...
2026-01-28
出鏡時間最短卻獲得奧斯卡影帝
出鏡時間最短卻獲得奧斯卡影帝
出鏡時間最短卻獲得奧斯卡影帝?埃迪·雷德梅恩,因為滿臉标志性的雀斑而獲得“小雀斑”的名号,這個昵稱已經在《神奇動物》系列電影的宣傳活動中得到正主本人親自蓋章,下面我們就來說一說關于出鏡時間最短卻獲得奧斯卡影帝?我們一起去了解并探讨一下這個問...
2026-01-28
蘇州市橫山日間照料中心
蘇州市橫山日間照料中心
蘇州市橫山日間照料中心?2021年9月30日蘇州訊:為了豐富老年人的業餘生活,培養他們的動手實踐能力,蘇州市相城區元和街道古巷社區日間照料中心近日開展了“花樣生活,花樣手工”主題活動,我來為大家講解一下關于蘇州市橫山日間照料中心?跟着小編一...
2026-01-28
發電機的待并網電壓
發電機的待并網電壓
2017第六屆新能源發電系統技術創新大會中國電工技術學會主辦,2017年6月21-24日在河北省張北縣舉辦,大會圍繞新能源發展戰略、系統關鍵技術、微電網及儲能等重要議題展開交流。浏覽會議詳情和在線報名參會請關注微信号“電氣技術”。中廣核工程...
2026-01-28
劉惠民書法作品欣賞
劉惠民書法作品欣賞
翰墨網訊:7月10日上午,為了認真落實“把優秀傳統文化的精神标識提煉出來、展示出來,把優秀傳統文化中具有當代價值、世界意義的文化精髓提煉出來、展示出來”的重要指示精神,助力文化強國、踐行文化強省,經過幾年的精心創作,“書寫經典”——劉興華書...
2026-01-28
Copyright 2023-2026 - www.tftnews.com All Rights Reserved