字符串数组指针取某个地址的值
时间: 2023-07-25 15:22:53 浏览: 95
可以使用以下语法来取字符串数组指针中某个地址的值:
```c
char *strArrPtr[] = {"foo", "bar", "baz"}; // 字符串数组指针
char *strPtr = strArrPtr[1]; // 取第二个元素的地址
char c = *strPtr; // 取该地址的值,即第二个元素的第一个字符 'b'
```
在上面的例子中,`strArrPtr` 是一个字符串数组指针,它包含三个指向字符串常量的指针。我们可以使用下标操作符 `[]` 来访问其中的元素,比如 `strArrPtr[1]` 取第二个元素的地址。接着,我们将该地址赋值给 `strPtr`,然后使用解引用操作符 `*` 来取该地址的值。在这里,我们将该值赋给字符变量 `c`,因此 `c` 的值为 `'b'`。
相关问题
给我讲一下指针数组
指针数组是指一个数组,这个数组的元素都是指针。也就是说,指针数组可以看作是一个数组的每个元素都是指向某个类型的指针。
例如,我们可以定义一个指针数组,它的元素都是指向整型变量的指针:
```c++
int a = 1, b = 2, c = 3;
int* ptr[3] = { &a, &b, &c };
```
上面的代码定义了一个名为ptr的指针数组,它有3个元素,每个元素都是指向int类型的指针。数组的第一个元素指向变量a,第二个元素指向变量b,第三个元素指向变量c。
我们也可以通过下标来访问指针数组中的元素,例如:
```c++
cout << *ptr[0] << endl; // 输出1
cout << *ptr[1] << endl; // 输出2
cout << *ptr[2] << endl; // 输出3
```
上面的代码输出了指针数组中每个元素所指向的变量的值。
指针数组的应用非常广泛,常用于处理字符串、动态内存分配等问题。需要注意的是,指针数组只是一个数组,它本身不是指针,也就是说,不能对整个数组进行取地址操作。
阅读全文