一、運算子定義:
用於運算的符號,作用就是可以把變數形成語句。
二、運算子分類:
1、數值型別
1、)數**算符:+、
-、 *、
/、 %(取餘數)、
++、
--、 +=、
-=、*=、
/=、%=
<?php
$sun1=1;
echo $sun1++;
echo "
";echo $sun1;
echo "
";echo ++$sun1;
echo "
";$shuxue1=1;
echo $shuxue1++;
echo "\t水平方向
4個半形空格但是不起作用";
echo $shuxue1;
echo "
";echo ++$shuxue1;/* $shuxue1++;或者
++$shuxue1;
都等同於
$shuxue1=$shuxue1+1;*/
echo "
";$math1=4;
//echo ++$math1;//先加
1再輸出
echo $math1++;//先輸出再加1
echo "
";echo $math1;
echo "
";$math2=5;
echo $math2+=1;//等同於
$math2=$math2+3;
echo "
";echo $math2-=2; // 6
echo "
";echo $math2*=2; // 12
echo "
";echo $math2/=2; // 6
echo "
";echo $math2%=2; // 0
?>
2、字串
2)字元運算子:. 連線
<?php
$string1="abc";
$string2="def";
$mulstring=$string1.$string2;
echo $mulstring;
3、布林運算子: !(非,取反)
&&(and,
邏輯和) ||(or
,邏輯或者)
<?php
$boolean=false;
echo !$boolean;
echo "
";&& and和,用於布林型別運算只要有乙個假結果就是假,否則為真
echo true && true && true && true;
echo "
";echo true && false && true && true;
echo "
";|| or或者,用於布林型別運算只要乙個真結果就為真,否則為假
echo true || true || true || true;
echo "
";echo true || false || true || true;
&位和,
|位或 建議不用。
4、比較運算子: >、
<
、 >=
(大於等於)、
<=
(小於等於)、
==(比較值是否相等)、
!=(不等於)
<?php
//比較值是否相等
echo 1==2;
echo "
";echo 1!=2;
5、元(目)運算子:按照運算元(變數)個數來分類。
一元運算子:!、++、
-- 二元運算子:通常用的都是二元運算子,例如+、-、
*、/
三元運算子:?:
<?php
$temp1=5;
$temp2=2;
$max=$temp1>$temp2?$temp1:$temp2;
echo $max;
6、型別轉換:
不同資料型別之前預設是不能進行運算,如果非要運算要麼出錯,要麼結果不可預料。
自動型別轉換(隱式):不需要你去關心,程式會自動執行,小範圍值的變數和大範圍值的變數進行運算,先把小範圍轉化為大範圍再運算,結果是大範圍。
強制型別轉換:小範圍的值的變數非要和小範圍運算,結果為小範圍。
<?php
$temp1=5;
echo "++$temp1";
echo "
";//echo 2."abc";
//echo 1+2."abc";
echo "2"."abc
";echo (2)."abc
";//自動型別轉換
echo (1+2)."abc
";echo (1+2.2)."
";echo (3+(integer)4.4)."
";//強制型別轉換
echo (integer)(3+4.4);//既有自動型別轉換又有強制型別轉換
echo "
";echo 1+"2";
echo "
";echo 1+"2aaaa";
echo "
";echo 1+"aaa2aaa";
7、運算子優先順序:
多個運算子之間進行運算,哪個先運算那個後運算;布林型別和數字進行運算,非0的數字為
true,0
為false
;字串非空為
true
,空為false。
<?php
echo 1+2*3;
echo "
";echo (1+2)*3;
echo "
";echo true && 1+2*3 || 4-5 || 7-6/2 && null && (8+9)-20
|| "" && '' || 1+2>3 && 4+5==9;
echo true && 1+2*3 || 4-5 || 7-6/2 && null && 17-20
|| "" && '' || 1+2>3 && 4+5==9;
echo true && 1+6 || 4-5 || 7-6/2 && null && 17-20
|| "" && '' || 1+2>3 && 4+5==9;
echo true && 1+6 || 4-5 || 7-3 && null && 17-20
|| "" && '' || 1+2>3 && 4+5==9;
echo true && 7 || 4-5 || 7-3 && null && 17-20
|| "" && '' || 3>3 && 9==9;
echo true && 7 || -1 || 4 && null && -3
|| "" && '' || 3>3 && 9==9;
echo true && 7 || -1 || 4 && null && -3
|| "" && '' || false && 9==9;
echo true && 7 || -1 || 4 && null && -3
|| "" && '' || false && true;
echo true || -1 || false
|| false || false;
tips:建議多用小括號!!!
三、表示式:
由運算元和運算子組成的式子。語句去掉分號就是表示式,甚至可以是乙個變數。
運算子與表示式
學習c語言時,在我們已經學習了型別,常量與變數,接下來就是通過學習運算子與表示式對型別,常量與變數進行運算。簡單說一下概念,用來對資料進行運算的符號,就可以稱為運算子。c中運算子和資料構成的式子,就稱為表示式。表示式再在其後加乙個分號,即構成c 語言語句。先說一下運算子吧。c語言的運算子多,一般記住...
運算子與表示式
數 算 注意事項 兩端的變數必須是同種型別,並返回同種型別。取餘運算,負數的餘數符號與被模數符號相同,1 5 1,1 5 1 num n,n 0,結果範圍 0,n 是週期函式。注意整除問題 1 2 0 整數的除法是整除 1.0 2 0.5 1d 2 0.5 單獨的前 後自增或自減是沒區別的,有了賦值...
運算子與表示式
1.了解什麼是表示式 表示式是由運算子與資料組成的式子,每乙個表示式都有運算的結果。2.我的老師每次使用這個運算子的時候都會說到這個老梗,sizeof是運算子不是函式,別看sizeof後面還要加乙個括號,但不是所有的都是函式。這也從側面sizeof在面試題中經常出現。3.隱式轉換型別 由於有的編譯系...