--運算符歸納:
在編程中我們總要有些數據需要處理,C語言提供了大量的操作。可以進行算術計算、比較值的大小、修改變量、邏輯地組合關系等等。
在下面為大家用一個表格歸納常用的運算符: 
--基本運算符:
賦值運算符:= 符號=不表示“相等”,而是一個賦值運算符。 i=2000;//語句將數值2000賦給名字i 符號=的左邊是一個變量名,右邊是賦給該變量的值。符號=被稱為賦值運算符。要注意不要把“i=2000;”這個語句讀作“i等于2000”,請一定務必讀作“把數值2000賦值給變量i” i=i+1;//給一個有限數加1 上邊的語句在數學上是沒有任何意義的。但是作為計算機賦值語句,它卻是很合理的。它意味著“找到名字為i的變量的值,對那個值加1,然后將這個新的賦值給名字為i的變量” 加法運算符:+ 加法運算符是使得在“+”兩側的值被加到一起,例如 i=i+1;//給一個有限數加1 減法運算符:- 減法運算符從它前面的數減去它后面的數,例如 i=i-1;//給一個有限數減1 符號運算符:- 符號運算符就是數學里邊的“—”負號。
a=-2;//把-2賦值給變量a 乘法運算符:* 乘法由符號*表示。語句: a=2*a; 除法運算符:/ C語言使用符號/來表示除法。“/”左邊的數值被它右邊的數值除。例如 a=a/12; 但是這里需要注意的是:整數型數值除法運算和浮點型數值除法運算有很大的不同。浮點型數值除法運算會得出一個浮點型的結果。那么自然啦,整數型數值除法運算會得出一個整數型的整數結果。整數型不能有小數部分,這使得5除以3很讓人頭疼,因為結果有小數部分。那咋辦呢?整數除法結果的小數部分都被丟棄,這個過程被稱為“截尾”。 取模運算符:%
取模運算符用于整數運算。該運算符計算出用它右邊的整數去除它左邊整數得到的余數。不要以為這個運算符是只供數學家使用的深奧工具,它是實際上我們非常常用常見的用途幫助你控制程序的流程。加入你存入一串字符串,但你只能按照要求每8個字節存一次,對存入的字符數進行除以8的取模(num%8)操作并檢驗結果是不是0。 增量和減量運算符:++、—— 增量運算符完成簡單的任務,即將其操作數的值增加1.這個運算符以兩種方式出現。 在第一種方式中,++出現在它作用的變量的前面,這是前綴模式。 a=++a;//前綴:使用a的值之后改變a 在第二種方式中,++出現在它的作用的變量后面,這是后綴模式。 a=a++;//后綴:使用b的值之前改變a 當然,之前我在不太熟練的情況下也使用下面不太精致的形式: a=a+1; 但是,這個程序給別人看的時候,沒有人會相信你是一個熟練的C程序員。
--基本位運算:
位運算: 在嵌入式的應用中,需要與各種字節、字雙字,也就是以8位、16位、32位長為單位的寄存器打交道。 位移運算:<<、>> <<在每次左移操作時,高位被舍,稱之為溢出,低位被自動補入0。每次左移高位都會溢出,只是不關心0溢出,而在意1的溢出。 >>在每次右移操作時,高位自動補0,低位被舍棄。 左移一位相當于該數被乘以2,左移n位相當于該數乘以2的n次方。右移一位相當于該數除以2,右移n位,相當于該數除以2的n次方。 按位與運算:& 參與按位與運算(&)的兩個運算數,從低位開始,對齊每一位,逐位進行與操作運算只有當對應位上的數據都為1時,該位的結果為1,否則為0。 按位或運算:| 參與按位或運算(|)的兩個運算數,從低位開始,對齊每一位,逐位進行與操作運算,當對應位的數據有一個數據位1時,該結果為1,只有都為0時才為0。
以下是本系列教程文章列表:歡迎大家踴躍討論,有問題可在51黑論壇回帖提出.
C語言基礎教程(1):http://www.zg4o1577.cn/bbs/dpj-41177-1.html C語言教程(2)-關鍵字 變量:http://www.zg4o1577.cn/bbs/dpj-41178-1.html C語言教程(3)-控制語句:http://www.zg4o1577.cn/bbs/dpj-41179-1.html C語言教程(4)-運算符:http://www.zg4o1577.cn/bbs/dpj-41180-1.html C語言教程(5)-函數:http://www.zg4o1577.cn/bbs/dpj-41181-1.html C語言教程(6)-數組與函數指針:http://www.zg4o1577.cn/bbs/dpj-41182-1.html
51單片機教程:http://www.zg4o1577.cn/bbs/mcu-xuexi-1.html STM32教程:http://www.zg4o1577.cn/bbs/dpj-41167-1.html
|