在 C++ 中,指针是一种变量,其值为另一个变量的地址。地址是内存中的一个位置,可以通过指针来引用。下面是一些关于指针和地址的基本概念:
定义指针变量:在 C++ 中,可以使用指针变量来保存某个变量的地址。定义一个指针变量需要在变量名前加上 "*" 符号。例如:
int *ptr;
这里定义了一个名为 ptr 的指针变量,它可以存储一个整数变量的地址。
取地址运算符:在 C++ 中,可以使用 "&" 符号来获取某个变量的地址。例如:
int num = 10;
int *ptr = #
这里定义了一个名为 num 的整数变量,并使用 "&" 符号获取了它的地址,并将地址赋给了指针变量 ptr。
解引用运算符:在 C++ 中,可以使用 "*" 符号来访问指针变量所指向的变量的值。例如:
int num = 10;
int *ptr = #
std::cout << *ptr << std::endl;
这里定义了一个名为 num 的整数变量,并使用 "&" 符号获取了它的地址,并将地址赋给了指针变量 ptr。然后使用 "*" 符号来访问 ptr 所指向的变量的值,输出结果为 10。
空指针:空指针是一个特殊的指针,它不指向任何变量。在 C++ 中,可以使用 NULL 或 nullptr 来表示空指针。例如:
int *ptr = nullptr;
这里定义了一个名为 ptr 的指针变量,它是一个空指针。
指针的算术运算:在 C++ 中,指针可以进行加法和减法运算,可以用来访问数组中的元素。例如:
int arr[5] = {1, 2, 3, 4, 5};
int *ptr = arr; // 等价于 int *ptr = &arr[0];
std::cout << *(ptr + 2) << std::endl; // 输出 3
这里定义了一个名为 arr 的整数数组,并定义了一个指针变量 ptr,将数组的第一个元素的地址赋给了 ptr。然后使用指针的加法运算来访问数组中的第三个元素,输出结果为 3。
以上是关于 C++ 中指针和地址的一些基本概念,需要注意指针变量的生命周期和指针的合法性,避免出现悬空指针或野指针等问题。
关于 C++ 中指针和地址的一些基本概念
于 2023-04-18 11:43:16 首次发布