&的意思c語言

在C語言中,& 這個符號有兩種用途:

  1. 位元運算符(Bitwise operator):當用作位元運算符時,& 用於執行位元AND運算。它會將兩個運算元的每一位都執行AND運算,產生一個新的位元組或字元組,其中包含兩個運算元中都為1的位元。
int a = 3; // 二進制表示為 00000011
int b = 5; // 二進制表示為 00000101
int result = a & b;

// result 的值為 1,因為只有最低有效位元是 1,其他位元都是 0。
  1. 取址運算符(Address-of operator):當用於變量名之前時,& 用於取變量的地址,並將其存儲在一個指針變量中。
int a = 10;
int *ptr = &a; // ptr 現在指向變量 a 的地址

請注意,& 作為取址運算符時,它是一個單獨的運算,而不是位元運算的一部分。在這種情況下,& 用於將變量的地址傳遞給指針變量,而不是執行位元運算。