4.3 C語言基本運算符
小學數學學過加、減、乘、除等運算符號以及四則混合運算,而這些運算符號在C語言中也有,但是有些表達方法不一樣,并且還有額外的運算符號。在C語言編程中,加、減、乘、除和取余數的符號分別是:+、-、*、/、%。
C語言有一個很重要的賦值運算符“=”,前邊程序有使用過。在C語言里,“=”代表的意思是賦值,而不是等于。最經典的一個例子就是a=1;b=2;如果寫成a = a+b;這個在數學里的運算是a等于a加b,是個錯誤結論;而在c語言里的意思是把a加b的結果送給a,那么運算完了之后的結果是a等于3,b還等于2。
說到這里就不得不說C語言的比較運算符“==”。這個在C語言里是進行是否等于判斷的關系運算符,而“!=”就是不等于的關系運算符。
此外,C語言中還有額外的兩個運算符++和--,一個是自加1,一個是自減1,下面選++來講一下。
++在用法上就是加1的意思,注意是變量自己加,比如b++的意思就是b=b+1,而在編程的時候有兩種常用的方式先加和后加。比如
unsigned char a = 0; unsigned char b = 0;
那么
a = ++b;
其整個運算過程是先計算b=b+1,那么b就等于1了,然后再運行a=b,運行完畢后a=1,b=1。如果寫成
a=b++;
那么運算過程就是先執行a=b;然后再執行b=b+1,執行完的結果就是a=0,b=1。
這些運算符這里就是簡單介紹一下,而后邊會通過使用實例來鞏固這些知識。其他一些運算符,在使用過程中也會陸陸續續介紹到。
4.4 for循環語句
for語句是C語言編程的一個常用的語句,這個語句必須得學會其用法,它不僅僅可以用來做延時,更重要的是用來做一些循環運算。for語句的一般形式如下:
for (表達式1; 表達式2; 表達式3)
{
(需要執行的語句);
}
其執行過程是:表達式1首先執行且只執行一次;然后執行表達式2,通常都是一個用于判定條件的表達式,如果表達式2條件成立,就執行(需要執行的語句);然后再執行表達式3;再判斷表達式2,執行(需要執行的語句);再執行表達式3.....一直到表達式2不成立時,跳出循環繼續執行循環后面的語句。舉個例子:
for (i=0; i<2; i++)
{
j++;
}
這里有一個符號++剛剛講過了。假如j最開始初值是0,首先執行表達式1的i=0,然后判斷i小于2這個條件成立,就執行一次j++,j的值就是1了,然后經過表達式3后,i的值也變成1了,再判斷條件2,還是符合,j再加一次,j變成2了,再經過表達式3后i也變成2了,再判斷條件2,發現2<2這個條件不成立了,所以就不會再執行j++這個語句了。所以執行完畢后,j的值就是2。
for語句除了這種標準用法,還有幾種特殊用法,比如前面的閃爍小燈對for語句的用法for(i=0; i<30000; i++) ;沒有加(需要執行的語句),就是什么都不操作。但是什么都不操作的話,這個for語句循環判斷了30000次,程序執行是會用掉時間的,所以就起到了延時的作用。比如把30000改成20000,會發現燈的閃爍速度加快了,因為延時時間短了,當然,改成40000后會發現,閃爍慢了。但是有一點特別注意,C語言的延時時間是不能通過程序看出來的,也不會成比例,比如這個for循環里邊的表達式2使用30000時延時是3秒的話,那么改成40000的時候,可能并不一定是4秒。
還有一種寫法for( ; ; ),這樣寫后,這個for循環就變成了死循環了,就不停的執行(需要執行的語句),和前邊講的while(1)的意思是一樣的了。那while這個語法是如何用的呢?
審核編輯 黃宇
-
C語言
+關注
關注
183文章
7644瀏覽量
145575
發布評論請先 登錄
C語言主要特點
第6章 中斷與數碼管動態顯示(6.1 6.2)
第4章 C語言基礎以及流水燈的實現(4.5 4.6)
蜂鳥E203在黑金XC7A200T型FPGA上點亮LED并實現流水燈
【沁恒CH585開發板免費試用體驗】GPIO 流水燈
【RA-Eco-RA4M2開發板評測】點燈實現6種LED花式流水燈操作
【RA-Eco-RA4M2開發板評測】2 初識GPIO流水燈
基于運算放大器和模擬集成電路的電路設計(第3版)
新概念51單片機C語言教程入門、提高、開發、拓展全攻略
【北京迅為】iTOP-RK3568開發板OpenHarmony系統南向驅動開發-第4章 UART基礎知識
第4章 C語言基礎以及流水燈的實現(4.3 4.4)
評論