指针的使用案例
时间: 2023-07-11 19:08:59 浏览: 48
指针是C/C++中非常重要的概念,它可以用来动态分配内存、访问数组、传递函数参数等。以下是一些使用指针的常见案例:
1. 动态分配内存:可以使用指针来动态分配内存,例如在程序运行时根据需要分配数组、结构体等大块的内存空间。
```c++
int *p = new int[10]; // 动态分配一个包含10个整数的数组
```
2. 访问数组元素:指针可以用来访问数组元素,可以通过指针的加减运算访问数组中的任意元素。
```c++
int arr[5] = {1, 2, 3, 4, 5};
int *p = arr;
cout << *(p + 2) << endl; // 输出数组中的第三个元素,即3
```
3. 传递函数参数:指针可以用来传递函数参数,这样可以避免复制大块的数据,提高程序的效率。
```c++
void swap(int *a, int *b)
{
int temp = *a;
*a = *b;
*b = temp;
}
int main()
{
int x = 1, y = 2;
swap(&x, &y); // 传递指向x和y的指针,实现交换
cout << x << " " << y << endl; // 输出2 1
return 0;
}
```
4. 返回指针:函数可以返回指向动态分配的内存、数组、字符串等的指针,这样可以在函数外部访问这些数据。
```c++
int *createArray(int n)
{
int *arr = new int[n];
for (int i = 0; i < n; i++)
{
arr[i] = i;
}
return arr;
}
int main()
{
int *p = createArray(5); // 创建一个包含5个元素的数组
for (int i = 0; i < 5; i++)
{
cout << p[i] << " "; // 输出0 1 2 3 4
}
delete[] p; // 释放动态分配的内存
return 0;
}
```