C++ 中 & 符号的用途是什么?
在 C++ 中,& 符号用作运算符。它在两个不同的位置使用,一个用作按位与运算符,另一个用作 指针地址运算符。
按位与
按位与运算符 (&) 将第一个操作数的每个位与第二个操作数的相应位进行比较。如果两个位都是 1,则该位设置为 1。否则,该位设置为 0。按位与运算符的两个操作数必须是整数类型。
示例
#include <iostream>
using namespace std;
int main() {
unsigned short a = 0x5555; // pattern 0101 ...
unsigned short b = 0xAAAA; // pattern 1010 ...
cout << hex << ( a & b ) << endl;
}输出
这将输出:
0
地址运算符
C++ 提供了两个指针运算符,即地址运算符 (&) 和间接运算符 (*)。
一个 指针 是一个包含另一个变量地址的变量,或者可以说,包含另一个变量地址的变量被称为“指向”另一个变量。变量可以是任何数据类型,包括对象、结构体或再次是指针本身。
地址运算符 (&) 是 * 的补码。它是一个一元运算符,返回其操作数指定的变量 (右值) 的地址。例如:
示例
#include <iostream>
using namespace std;
int main () {
int var;
int *ptr;
int val;
var = 3000;
// take the address of var
ptr = &var;
// take the value available at ptr
val = *ptr;
cout << "Value of var :" << var << endl;
cout << "Value of ptr :" << ptr << endl;
cout << "Value of val :" << val << endl;
return 0;
}输出
编译并执行上述代码后,将产生以下结果:
Value of var :3000 Value of ptr :0xbff64494 Value of val :3000
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP