“char * p1; p1 = str;”与c ++中的“char * p1 = str;”相同吗?

时间:2011-12-13 04:11:03

标签: c++ pointers

我只想知道以下陈述是否相同:

char str[80];    
char *p1;
p1 = str;

char str[80];    
char *p1 = str;

由于

3 个答案:

答案 0 :(得分:6)

是的,陈述是一样的。

答案 1 :(得分:4)

在第一个例子中,str的值被赋给变量p1(基本char到char赋值)。

在第二个示例中,您将p1声明为指向str。

值的指针

答案 2 :(得分:2)

是。在这两种情况下都会发生隐式数组到指针的转换,指针会初始化为数组第一个元素的地址。