首页 > 解决方案 > int 类型数组的名称和 char 类型的数组名称有什么区别?(在 C++ 中)

问题描述

#include <iostream>
using namespace std;

int main() {
int arr1[10]={1,2,3,4,5};
cout << "Address is : " << arr1 << endl;

char arr2[10] = "Hello";
cout << "Address is : " << arr2 << endl;
}

在这段代码中,我希望先打印 arr1 的地址,然后再打印 arr2 的地址。因为数组的名字和数组的起始地址是一样的。(arr = &arr[0]) 但是,但是作为执行的结果,就是这个样子。

地址是:0x7ffde1799760 地址是:你好

我想知道为什么打印arr2不会打印数组的起始地址,而是数组中存储的字符串。

谢谢 :)

标签: c++arrayspointers

解决方案


推荐阅读