&: 在C語言中有兩種意思,一種是取地址符,是單目運算子;另一種是位運算子,表示“按位與”,是雙目運算子,

1.用于指標賦值
#include<stdio.h>
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;
例如:9&5可寫算式如下: 00001001 (9的二進制補碼)&00000101 (5的二進制補碼) 00000001 (1的二進制補碼)可見9&5=1,
按位與運算通常用來對某些位清0或保留某些位,例如把a 的高八位清 0 , 保留低八位, 可作 a&255 運算 ( 255 的二進制數為0000000011111111),
main(){
int a=9,b=5,c;
c=a&b;
printf("a=%d/nb=%d/nc=%d/n",a,b,c);
}
3.當出現“&&”時用于邏輯與
說得簡單點就是:邏輯與
說的通俗一點就是:并且~~
&&相當于集合里面的交集——例如:女人&&男人 —— 地球上沒人是真值
PS: || 是 “邏輯或”、“或者”——例如: 女人||男人 —— 地球上人人都滿足
總結
1、取地du址運算子,單目運算,zhi與其后的dao變數或常量組合,用于獲取zhuan該運算元的記憶體地shu址,
2、位操作中的按位與操作,雙目運算子,&的兩邊的運算式均參與操作,
計算時,按位計算,對于任意一位,如果兩個運算元該位上的值均為1,則結果該位上為1,否則結果該位上值為0.
3、當兩個&符號同時使用,即&&符號,代表邏輯運算中的邏輯與,雙目運算子,&&的兩邊的運算式均參與操作,
當&&兩邊均為真時,結果為真,否則結果為假,
&&由于是邏輯運算,結果只有真(1)或假(0)兩種情況,
到此這篇關于c語言中&的用法示例的文章就介紹到這了,有什么問題歡迎評論區留言,

最后,如果你也想成為程式員,想要快速掌握編程,趕緊加入學習企鵝圈子!
里面有資深專業軟體開發工程師,在線解答你的所有疑惑~編程語言入門“so easy”
編程學習書籍:

編程學習視頻:

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/250434.html
標籤:C
