1.乙個「&」
1.1作為雙目運算子(有兩個運算元)——位操作符中的與操作運算子
操作運算子的使用物件是整數,對整數的二進位制編碼每一位的操作。
按位與操作符:參與運算的兩個值,如果兩個數的相應位都為1,則該位結果為1,否則為0
例如:6&5
6(十進位制)——>00000110(二進位制)
5(十進位制)——>00000101(二進位制)
運算後是:00000100,有一位不為0,結果為真
1.2作為單目運算子(只有乙個運算元)——取位址
「&」也可用於其他的語句中,例如:
所以後來a 改變了,而b卻沒有改變。
由以上結果可以看出,指標b存放的內容為a的位址,但同時b也有其自己的記憶體位址。
2.兩個「&」
兩個「&」作為邏輯運算子中的按位「與」,即表示「&」左右兩邊的條件要同時成立.
例如:
#includeint main(void)
在c++中「&」還有引用的作用
int &a=x;
表示二者指向同一塊記憶體位址,兩者中的任意乙個的改變都會引起另乙個的改變
此處的條件語句中看似只改變了b,但由於a,b指向同一塊記憶體位址,所以改變b也改變了a.
引用和取位址字面上的區別是:取位址是&i(i為某一變數,可以不用初始化),而引用則是int& b=a(型別& 表示式)
與「&」一樣,「*」也有三種用法
在C語言中的用法
1.模運算,即求餘數。表示式 a b 就是計算 a 除以 b 得出的餘數。例如 8 6 的結果是 22.轉義符,比如在 scanf 和 printf 中的輸入引數常出現帶有 的表示引數型別的變數,它的作用是將輸出的資料轉換為指定的格式輸出。格式說明總是由 字元開始的。格式字元有d,o,x,u,c,s...
在C語言中Static的用法
一 c程式儲存空間布局 c程式一直由下列部分組成 1 正文段 cpu執行的機器指令部分 乙個程式只有乙個副本 唯讀,防止程式由於意外事故而修改自身指令 2 初始化資料段 資料段 在程式中所有賦了初值的全域性變數,存放在這裡。3 非初始化資料段 bss段 在程式中沒有初始化的全域性變數 核心將此段初始...
const在C語言中的用法
const作用 防止定義的變數被修改 1 用於修飾變數 const int a 10 合法 int const b 10 合法,等價const int 10 const int c 非法 int const d 非法 注意 必須有初始值 2 用於修飾指標 const修飾的 sp,所以sp指標指向的位...