運算子與表示式

2021-08-21 07:14:39 字數 1157 閱讀 1238

1.了解什麼是表示式:表示式是由運算子與資料組成的式子,每乙個表示式都有運算的結果。

2.我的老師每次使用這個運算子的時候都會說到這個老梗,sizeof是運算子不是函式,別看sizeof後面還要加乙個括號,但不是所有的都是函式。這也從側面sizeof在面試題中經常出現。

3.隱式轉換型別:由於有的編譯系統是不能直接運算不同型別間的資料,必須要轉換成同型別才能轉換。

簡單的有    整形=浮點型。將浮點型賦值給整形時只會取整數部分。另一些情況就較為複雜了。

例如int a=100;

char b=97;

float c=3.14;

short result=a+b;

printf("%d\n",result);//輸出的結果為197,可以理解為char型別就是int型別的一種,更準確的說是char型別遇到int 型別的時候會轉換為int 型別。

float result=a+c;

printf("%f\n,"result);//輸出結果為103.14,原因是int型別遇到float或者是double型別都會轉化成double。其實平常使用float型別的時候,系統為了提高精度,都會將float當成double使用除非指定使用型別為float

4.位運算:位運算子包括    << 左移   >>右移  & 按位與    | 按位或  ^按位異或   ~按位取反

1.位 的左移與右移

舉乙個很簡單的例子:

short i=4;

i=i>>1;//i的輸出值為2而不是3,位的移位運算方法是將數值轉換為二進位制 4:00000000 00000100,所有的位向右移乙個單位,空出來的部分再由0補齊。結果就是0000000 00000010。再轉換為十進位制結果為2.

2.按位與和按位或

按位與和按位或是兩個二進位制數每一位對應進行與或者或運算。

例題:將0101 110 0110 1010  的第5-8位修改為10110

unsigned short num=22122;

short a=0xb<<4;

short b=0xf<<4;

unsigned short result=num&(~b)|a;

3,按位異或和按位取反

按位異或  ^    按位異或之後將相同的位變成0,不同的位變成1

按位取反  ~    0變成1,1變成0

運算子與表示式

學習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 單獨的前 後自增或自減是沒區別的,有了賦值...

運算子與表示式

運算子 的功能是完成某件事,它們由如 這樣的符號或者其他特定的關鍵字表示。運算子需要資料來進行運算,這樣的資料被稱為 運算元 在這個例子中,2和3是運算元。運算子我們將簡單瀏覽一下運算子和它們的用法 技巧你可以互動地使用直譯器來計算例子中給出的表示式。例如,為了測試表示式2 3,使用互動式的帶提示符...