21xrx.com
2024-12-23 00:01:32 Monday
登录
文章检索 我的文章 写文章
如何在C++中输出数组的值而非地址
2023-06-28 19:34:23 深夜i     --     --
C++ 输出 数组 地址

在C++中,当我们试图输出一个数组的值时,往往会得到它的内存地址,而非实际的数组值。这是因为数组在C++中被认为是一个指针,指向它所占据的内存空间的首地址。因此,我们需要采取一些措施来在输出数组时,获取它的实际值,而不是它的地址。

方法一:使用循环输出

一种常见的解决方案是使用循环来输出每个数组元素的值。我们可以使用for循环来逐个输出数组元素。例如:


int arr[5] = 5;

for(int i=0; i<5; i++)

{

  cout<<arr[i]<<" ";

}

在这个例子中,我们定义了一个包含5个元素的整数数组`arr`,并使用for循环逐个输出`arr`中的元素。这将输出数组中的每个元素的实际值。

方法二:使用指针

在C++中,数组的名称被视为指向数组的第一个元素的指针。因此,我们可以使用指针来输出数组元素的值,而不是它们的地址。例如:


int arr[5] = 3;

int *ptr = arr;

for(int i=0; i<5; i++)

{

  cout<<*(ptr+i)<<" ";

}

在这个例子中,我们定义了一个包含5个元素的整数数组`arr`,并为它定义了一个指针`ptr`,它指向`arr`的第一个元素。然后,我们使用for循环和指针`ptr`来输出数组中的元素值,而不是它们的地址。

方法三:使用标准库容器

C++标准库提供了各种容器,如vector、list和deque等,它们提供了许多更高级的功能,比如可以更方便地输出数组。例如:


#include <vector>

#include <iostream>

int main()

{

  std::vector<int> vec 4;

  for(int i : vec)

  

    std::cout<<i<<" ";

  

  return 0;

}

在这个例子中,我们使用了一个名为`vector`的标准库容器来存储整数数组。然后,我们使用C++11中的range-based for循环来输出容器中的所有元素。

总结

在C++中,要输出数组中的值而非地址,您可以使用循环,指针,或标准库容器来进行输出。每种方法都有自己的优缺点,可以根据具体情况进行选择。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复