C語言題目:設a=12, 表示式a+=a
- 2022-12-20
a+=a就是a=a+a
執行a+=a之後 a=24
a=24
a+=a-=a=10;
等價於a +=( a-= (a=10 ) )
一層一層地撥,先算最裡邊的小括號,a+=( a -=10) ——-> a+=(a =a-10)————>a+=(a=10-10)
再去一層擴括號:a+=( 0 )——>a=a+0——>a=0+0=0;
點評:這就是現在的大學,實用的東西不教。反倒把重心放在一些自以為很容易讓人掉入陷阱但是一點毛用都沒有的知識點上。說句實話,a+=a-=a=10;這個寫法,在真正的開發中。十年都沒用過一次。在考試題中,如果你做出了這道題,別人也許還會給你點個贊。如果在開發中,別人看到你這樣的程式碼。立馬說你慫的要死。哎,悲哀。悲哀。
a+=a的意思是a=a+a,就是以a為儲存變數,逐級加,經常用在for語句中。