小编que*_*ons的帖子

在C++中使用指向char数组的指针

我是Coding的新手,并且有一些问题需要理解指针如何与数组结合使用(我自己理解这些数据).

我知道可以创建一个指针数组,如:

#include <iostream>
using namespace std;

int main() {
    int i;
    int *pArr[10];
    pArr[0]=&i;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

在教程中,我发现了以下代码:

#include <iostream>
using namespace std;

int main() {
    char *names[4] = {
        "name A",
        "name B",
        "name C",
        "name D"
};

for (int i = 0; i < 4; i++) {
    cout << names[i] << endl;
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)

为什么我可以分配多个字符,或者说一个字符串,比如"name A"到一个指向char的指针.

IA不应该:

只能将char的Address分配给我创建的4个指针中的每一个.

而且B:

只能将指针分配给每个字母(一个字母).

我希望有人可以在某种程度上帮助澄清我的困惑.

c++ arrays pointers

4
推荐指数
1
解决办法
3065
查看次数

标签 统计

arrays ×1

c++ ×1

pointers ×1