C 學習日記4 C 常量和算術表示式

2021-06-20 09:02:29 字數 1862 閱讀 9256

-.1 c++常量簡介

上一節我們介紹了變數,它是一種儲存在電腦記憶體裡,在程式中可以改變的資料。然而,有時候我們還會遇到一些資料,它們在程式中不應該被改變。比如圓周率π就應該等於3.14151926……,一年就應該是12個月,在程式中不應該改變成其他的值。或者說,如果這些值無意中被改變,會導致整個程式發生錯誤。在這個時候,我們就需要乙個不允許發生改變的「箱子」,我們稱它為常量(constant)。

常量可分為兩種,一種是文字常量,也叫值常量。比如整數1,字元a就是文字常量;另一種是需要通過自己定義的常量,它的表示式和變數有些類似。

定義乙個常量的語法格式為:

const 常量資料型別 常量名 = 文字常量;

我們可以認為,定義乙個常量與定義乙個變數的區別是在語句之前加上了const。但是,定義常量的時候必須對其進行初始化,並且在除定義語句以外的任何地方不允許在對該常量賦值。

特別地,如果乙個實型文字常量沒有做任何說明,那麼預設為雙精度型資料。若要表示浮點型資料,要在實數之後加上f;若要表示長雙精度型資料,則要在實數之後加上l。

在cout語句中,我們說他可以輸出字串,這些帶著雙引導的字串的全稱是字串常量,它也是一種文字常量。而帶著單引號的常量稱為字元常量,他與字串常量是不同的,字串常量只能是乙個字元,而字元常量則可以是乙個字元,也可以是由若干個字元組成。

事實上,只要在不人為地改變變數值的情況下,常量可以由乙個變數來代替。但是從程式的安全和嚴謹角度考慮,我們不推薦這樣做。區別常量和變數的使用是乙個優秀程式設計師需要具有的好習慣。

-.2 c++算術表示式

我們已經了解程式設計中,最常用的兩種儲存方式--常量和變數。本節我們要學習如何在程式中運用常量和變數。我們先來看一段程式:

e.g.1

#include "iostream.h"

int main()

程式執行結果:

請輸入半徑:3

這個圓的周長為18.8496

我們需要重點研究的是l = 2 * pi * r這句語句。這句語句稱為賦值語句,賦值語句的語法格式為:

左值 = 表示式;

語句中,等號稱為賦值操作符。賦值操作符的作用就是把表示式的結果傳遞給左值。具體的過程是先將右側的表示式的值求出,然後再將它存放到左值中。所以在賦值操作符兩邊出現相同的變數也是允許的。比如a = a + 1就是先把原來a的值和1相加,然後再把結果放回到變數a中。左值(left value,也作l-value)的原意是在賦值操作符左邊的表示式,它具有儲存空間(比如自定義常量或變數),並且要允許儲存(自定義常量只能在定義時初始化)。現在了解的知識中,左值可以理解為變數或者定義語句中的自定義常量。

向程式中的2*pi*r我們稱為算術表示式。它和平時數學上的表示式沒什麼不同。如同四則運算一樣,算術表示式中使用的是加減乘除和括號,運算的次序也是遵循「括號最先,先乘除後加減」的原則。需要注意的是:

表示式中,乘號是不能夠省略的即2a、4b之類的表示式是無法被識別的。

算術表示式中,括號只有小括號()一種,並且可以有多重括號。中括號和大括號{}都是不允許使用在算術表示式中的。比如((a+b)*4)是正確的寫法,[(a+b)*4]卻是錯誤的寫法。

除、整除和取餘

在c++中,「/」有兩種含義:當除號兩邊的數均為整數時為整除,即商的小數部分被截去(不是四捨五入);除號兩邊只要有乙個是實型資料,那麼就做除法,小數部分予以保留,運算結果應當存放在實型變數中。

取餘數的操作符為%,例如7%3的結果是1.他和乘除法類似,在加減法之前執行運算。注意,在取餘數操作符的兩邊都應該是整數,否則將無法通過編譯。

至此,我們已經學會了輸入、輸出、和簡單的運算。運用這些知識,我們已經能夠自己設計一些簡單的程式,實現一些簡單的計算功能。

突然發現自己已經很多天沒有看書了。還是要看看書,打打字,鍛鍊大腦,加強記憶,幫助消化理解吧。2014/1/29、新年快樂,繼續加油吧~~~~~

4 C 基礎 表示式

運算型別轉換型別提公升 過載運算子 左值和右值 等號兩邊的物件 優先順序和結合律 運算子的優先順序和運算順序 左結合律 對於未制定求值順序的表示式,求值的時候產生的行為是未定義的。cout i i 4種明確了運算物件求值順序的運算子 運算物件的求值順序和優先順序與結合律無關。c f g h j 優先...

c 常量和常量表示式

const,預設情況下僅在檔案內有效 const int i 12 const引用 對常量的引用不能被用作修改它所繫結的物件 const int ci 5 const int rci ci rci 90 錯誤 不能修改 允許常量引用繫結到非常量的物件 字面值或表示式上 int i 20 const ...

c語言算術表示式

c語言基本算數運算子如下表 加法運算子 雙目運算子,即應有兩個量參與加法運算。如a b,4 8等。具有右結合性。減法運算子 雙目運算子。但 也可作負值運算子,此時為單目運算,如 x,5等具有左結合性。乘法運算子 雙目運算子,具有左結合性。除法運算子 雙目運算子,具有左結合性。參與運算量均為整型時,結...