微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我可以在 C++ 中输出数组的内存地址吗?

如何解决我可以在 C++ 中输出数组的内存地址吗?

如何在C++中输出数组的内存地址?有没有一种方法可以做到这一点? 我在数组中有 4 个元素,我想计算这些元素并输出这些元素的内存地址。

解决方法

是的,你可以。可以直接打印数组的地址,也可以打印第一个元素的地址,都是一样的。

您也可以使用 std::addressof,它是在 c++11 中引入的。

所有这些打印语句都得到相同的输出。


#include <iostream>

int main(int argc,char* argv[]) {
  int arr[] = {1,2,3,4};
  std::cout << &arr << std::endl;
  std::cout << arr << std::endl;
  std::cout << &arr[0] << std::endl;
  std::cout << std::addressof(arr) << std::endl;
  std::cout << std::addressof(arr[0]) << std::endl;
  return 0;
}

Online demo

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。