C++指针数组 | 如何在C++中创建指针数组 22

作者 : 慕源网 本文共2074个字,预计阅读时间需要6分钟 发布时间: 2022-04-21 共678人阅读

了解C++指针数组,数组是保存元素列表的东西,指针是保存变量地址的东西。因此,指针数组表示保存数组内元素地址的数组。当我们想要操作数组数据时,这个指针数组是必需的。指针数组使我们的操作变得容易,因为数组在本质上是非常有限的,所以这个指针数组将包含数组中每个元素的地址。指针数组保存数组元素的内存地址。我们将在下一节中更详细地讨论这一点。在本主题中,我们将学习C++指针数组。

语法:在C++中,如果我们想声明一个指针数组,那么我们必须创建一个数组来保存其他元素的地址,这些元素指向该地址的某个值。为了更好地理解,我们将看到它的语法如何在编程时使用它(见下文)。

type *name_of_pointer [size_or_array];

在上面的语法中,如果我们想要创建一个指针数组,那么我们必须首先定义数组指针的类型。之后,我们定义指针的名称,请记住,我们在C++中使用’*’astrict符号定义指针,在此之后,我们定义数组的大小,这意味着它将容纳多少个元素。为了更好地理解,我们将看到一个练习语法,见下文。

例子:

int *myptr[10];

这可以在C++中定义一个指针数组;之后,我们可以从数组中为它们分配变量的地址。

指针数组在C++中是如何工作的?

到目前为止,我们知道指针数组是用来存储数组元素的地址的。简而言之,这个指针值指向数组中元素的地址。如果我们想要访问它们,我们可以通过使用它们的地址来访问数组中的每个元素,因为它只指向它们。所以我们可以说这些是指向C++中元素的其他值的指针。通过使用这个,它使我们的操作变得更快,也提高了性能。此外,数组的操作变得很容易,因为现在我们有了元素的地址,这使得可以访问元素。现在我们来看看它们在C++编程语言中是如何工作的。

首先,我们将看到如何定义一个指针数组(见下文)。

int *myptr[10];

在上面的代码行中,我们声明了一个指针数组,它可以为我们保存10个元素。这个数组将保存元素的地址。为了获得元素的地址,我们在C++中使用了’&’关键字。通过使用这个,我们可以得到元素的地址。地址只不过是存储在内存中的元素的位置。地址始终是指元素的内存地址。该内存地址将转而指向存储在该位置的元素。

假设我们有一个数组,里面有5个元素。

例子:

int myarray [5] = {20, 40, 60, 80 , 100};

int*myptr[5];//它保存数组元素的地址。

正如我们在下面的图像中所看到的,数组中有5个元素。此外,数组中的每个元素都有一些内存地址。为了便于理解,我们假设它是memory-add1、memory-add2等等。那么一个指针数组会做什么呢?它们将存储元素的地址,并仅在将来将它们引用到该地址,这就是它在C++中的内部工作方式。

如何在C++中创建指针数组?

下面是在C++中创建指针数组的步骤,如下所示。

1.首先,我们需要创建一个包含一些元素的数组。现在我们假设有10个元素。

例子:

int myarray [2] = {100, 200};

2.在此之后,我们必须创建一个指针数组,它将存储数组元素的地址。

例子:

int *myptr[2];

3.为了获得数组元素的地址,我们在C++中使用了’&’操作符,这将为我们提供元素在内存中的地址。

例子:

myptr[1] = &myarray[1]; // so on ..

4.然后,我们将通过使用for循环对元素进行迭代,将元素的地址存储到指针数组中。

5.现在,我们可以使用指针数组来访问数组的元素。它会给我们同样的结果。

在下一节中,我们将看到如何在C++中实现它的一个示例。

C++指针数组示例

在本例中,我们创建了一个包含多个元素的数组,并尝试通过使用指针数组并获取其值来访问该数组。

代码:

#include <iostream>
int main() {
std::cout << "Demo to show array of pointers !!!\n";
int  myarray[5] = {100, 200, 300, 400, 500};
int *myptr[5];
std::cout << "Value of array !!\n";
for (int i = 0; i < 5; i+) {
std::cout << myarray[i] << std::endl;
}
myptr[0] = &myarray[0];
myptr[1] = &myarray[1];
myptr[2] = &myarray[2];
myptr[3] = &myarray[3];
myptr[4] = &myarray[4];
std::cout << "Value of array of pointers !!\n";
for (int i = 0; i < 5; i++) {
std::cout << *myptr[i] << std::endl;
}
}

输出:

结论

通过使用指针数组,我们可以轻松地操作数组。我们只需要通过使用元素的地址来访问元素。这个地址只不过是从内存中直接访问它们的元素的位置。

推荐文章

这是一个关于C++指针数组的指南。在这里,我们将讨论指针数组的工作原理以及如何在C++中创建它,以及示例。您还可以查看以下文章以了解更多信息–


慕源网 » C++指针数组 | 如何在C++中创建指针数组 22

常见问题FAQ

程序仅供学习研究,请勿用于非法用途,不得违反国家法律,否则后果自负,一切法律责任与本站无关。
请仔细阅读以上条款再购买,拍下即代表同意条款并遵守约定,谢谢大家支持理解!

发表评论

开通VIP 享更多特权,建议使用QQ登录