&在c語言中是什麼意思
在C語言中,&有三種作用,分別如下:
1. 取地址。單目運算符。用來取一個變量的地址。
比如
int?i,?*p;
p?=?&i;//這裏的&作用是取變量i的地址。
2. 位操作中的與操作運算符。
也就是常說的and操作,雙目運算符。
計算的時候按位計算,&兩邊操作數對應位上全為1時,結果的該位值為1。否則該位值為0
比如
0x12&0x23 轉為二進製為:
B00010010&B00100011,
按位計算結果為B00000010,
即結果為0x02。
3. 當兩個&&一起用的時候,表示為邏輯運算中的與運算。
邏輯運算結果隻有0和1兩種結果。
一般在&&兩邊是兩個邏輯表達式。
當兩個表達式值均為1時,&&運算結果為1,否則為0。
比如
2>1 && 0<1 這個的值為1&&1="">1>
1>2 && 2>0 這個值為0&&1 = 0。
1>2 && 2>3 這個值為0&&0=0。
&在c語言中什麼意思
“ & ”在c語言中是按位與運算符的意思。
c語言中的&的用法
1、用於指針賦值
#include int main() { int a = 2; int*b;//定義一個整形指針 b = &a;//給指針賦值,使指針指向a的地址 printf("%d", b);//輸出的是a的地址 printf("\n");//換行符 printf("%d", *b);//*的作用是解引用,取出指針指向地址的內容,達到簡 return 0; } 2、用於二目運算中的按位(位運算)與運算 單目是隻需要一個操作數的意思 比如 a++ a-- ? *a ?&a 雙目是需要兩個操作數的意思 ? 比如 ? a+b ?a-b a*b ?a/b ?a%b 三目是需要三個操作數的意思 ? 比如 ? ?a=c>b?c:b; 3、當出現“&&”時用於邏輯與 說得簡單點就是:邏輯與 說的通俗一點就是:並且~~ &&相當於集合裏麵的交集——例如:女人&&男人 —— 地球上沒人是真值 PS: || ?是 “邏輯或”、“或者”——例如: 女人||男人 —— 地球上人人都滿足(除了某些特殊職業的。。。) 拓展資料: C語言中的符號可以分為10類:算術運算符、關係運算符、邏輯運算符、位操作運算符、賦值運算符、條件運算符、逗號運算符、指針運算符、求字節數運算符和特殊運算符。 1?算術運算符 用於各類數值運算。包括加(+)、減(-)、乘(*)、除(/)、求餘(或稱模運算,%)、自增(++)、自減(--)共七種。 2.關係運算符 用於比較運算。包括大於(>)、小於(<)、等於(==)、 大於等於(="">=) 、小於等於(<> 3.邏輯運算符 用於邏輯運算。包括與(&&)、或(||)、非(!)三種。 4.位操作運算符 參與運算的量,按二進製位進行運算。包括位與(&)、位或(|)、位非(~)、位異或(^)、左移(<)、右移(>>)六種。 5.賦值運算符 用於賦值運算,分為簡單賦值(=)、複合算術賦值(+=,-=,*=,/=,%=)和複合位運算賦值(&=,|=,^=,>>=,<> 6.條件運算符 這是一個三目運算符,用於條件求值(?:)。 7.逗號運算符 用於把若幹表達式組合成一個表達式(,)。 8.指針運算符 用於取內容(*)和取地址(&)二種運算。 9.求字節數運算符 用於計算數據類型所占的字節數(sizeof)。 10.特殊運算符 有括號(),下標[],成員(→,.)等幾種。 (表達式)? x : y ; 首先計算表達式的值,若為ture,則"(表達式)? x : y "返回x;否則返回y. 如下圖所示: * C語言是一門通用計算機編程語言,應用廣泛。C語言的設計目標是提供一種能以簡易的方式編譯、處理低級存儲器、產生少量的機器碼以及不需要任何運行環境支持便能運行的編程語言。 * 盡管C語言提供了許多低級處理的功能,但仍然保持著良好跨平台的特性,以一個標準規格寫出的C語言程序可在許多電腦平台上進行編譯,甚至包含一些嵌入式處理器(單片機或稱MCU)以及超級電腦等作業平台。 * 二十世紀八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標準局為C語言製定了一套完整的國際標準語法,稱為ANSI C,作為C語言最初的標準。 +=:加法賦值運算符,將運算符前麵的變量加上後麵的值再賦值給前麵的變量。 -=:減法賦值運算符,將運算符前麵的變量減去後麵的值再賦值給前麵的變量。 比如: a+=b;?????//等價於a=a+b a-=b;????//等價於a=a-b 是關係運算符. 表示:判斷是否相等的。 如:if(a==b) /*判斷a與b是否相等,如相等則為真*/ {....} 問號是條件運算符"?:"的一部分,條件運算符格式如下: 條件 ? 表達式1 : 表達式2 滿足條件則得表達式 1,否則得表達式 2. 例如:max = a>b ? a : b; 相當於如下語句: if(a>b) max=a; else max=b; 左移運算符 <> 運算規則: 按二進製形式把所有的數字向左移動對應的位數,高位移出(舍棄),低位的空位補零。 語法格式: 需要移位的數字 <> 例如: 3 <> 計算過程: 3 < 2="" 首先把3轉換為二進製數字0000="" 0011,然後把該數字高位(左側)的兩個零移出,其他的數字都朝左平移2位,最後在低位(右側)的兩個空位補零。則得到的最終結果是0000=""> +=的意思就是把左邊的第一個符號移到右邊,例如:“b+=c”,就是b = b+c的意思。 +=的意思就是把左邊的第一個符號移到右邊,其實就是b = b+c的意思。直接到b+=c的b+移到右邊。 b+=c也就是b=b+c 的意思。其實計算的還有很多種的前綴,後綴等等的表達式。 就是b=b+c,將b的值取出再取出c的值,相加然後賦給b,存儲在b開辟的內存空間中,類似的還有,b-=c、b*=c都是這個意思 實際上就是b=b+c的意思 之所以用b+=c,是從計算機的運算上考慮,符合計算機內部的計算原理 。 ? ? ? ? ? ? ? ? ? ? ? ? b+=c 的意思就是 b=b+c ->在C語言中稱為間接引用運算符,是二目運算符,優先級同成員運算符“.”。 用法: p->a,其中p是指向一個結構體的指針,a是這個結構體類型的一個成員。表達式p->a引用了指針p指向的結構體的成員a。 例如: struct T { int a; char b; }s; struct T* p=&s; 那麼, p->a相當於s.a。 顯然,有個等價寫法:(*p).a,和p->a完全等效。 ---- [原創回答團] 轉載請注明出處句子大全網 » &在c語言中是什麼意思c語言中?和:是什麼意思
~在c語言中什麼意思
C語言中+=和-=是什麼意思
C語言中==是什麼意思
在C語言中"?"代表什麼意思
c語言中符號<<是什麼意思
+=在C語言中什麼意思啊?
-> 在c語言中是什麼意思?