为什么两个不同的输出

时间:2017-09-28 17:25:25

标签: c++ pointers

我是编程新手。我编写了一个程序,并且在指针的概念上感到困惑。

#include <bits/stdc++.h>
using namespace std;
int main()
{
    char c[]="hello";
    char *a=c;
    cout<<a<<endl;
    int arr[]={1,2,3,5};
    int *p=arr;
    cout<<p<<endl;
    return 0;
}

当我打印时,它会打印hello,但是当我打印它时会打印地址。为什么呢?

1 个答案:

答案 0 :(得分:3)

std::ostream重载const char*以显示C字符串 int*会使用打印地址的void*