C++ 指向数组的指针

C++指向数组的指针

如果你之前已经较为系统地学习过C语言,那么可以跳过本章的阅读,不过重读一遍温故而知新也不错的。如果之前没有学习过C语言,那么在了解C++指向数组的指针之前,可以先了解一个概念,即什么是指针。就目前阶段,可以大概了解一下,即指针就是指向变量或对象的内存地址的一种特殊的变量,而内存地址上则存储着变量或对象的值。那么C++中的数组和指针有什么关系呢?

C++数组和指针的关系

C++或C语言中,数组类型的变量实际上是一个指针,一个指向数组第一个元素内存地址的指针。具体可参考下方的实例。

寻址符号

&

C++或C语言,都可以使用“&”寻址符号来引用变量的内存地址。

数组和指针实例代码

如下实例,定义了一个C++的数组,并通过寻址符号&来获取第一个数组元素的内存地址,并直接使用数组变量(实际上是一个指针)来输出其内存地址,可对二者进行比较,可以发现,二者输出的值是一样的。

#include <iostream>
using namespace std;


int main(){
    int array[3] = {1,2,3};
    cout << &array[0] << std::endl;
    cout << array << std::endl;

    return 0;

}

代码编译运行(不同的操作系统平台和编译器可能得到不同的输出):

0x61fe14
0x61fe14

指针访问C++数组元素的语法

*(arr+n);n为索引值,这相当于arr[n]

指针访问C++数组元素实例代码

#include <iostream>
using namespace std;


int main(){
    int arr[3] = {5,6,7};
    cout << *(arr + 0) << std::endl;
    cout << *(arr+ 1) << std::endl;

    return 0;

}

代码编译运行:

5
6

免责声明:内容仅供参考,不保证正确性。


全栈后端 / C++教程 :
















Copyright © 2022-2024 笨鸟工具 x1y1z1.com All Rights Reserved.