指针指向string
时间: 2024-02-05 20:08:02 浏览: 21
指针可以指向字符串,包括C风格的字符串和C++的std::string对象。下面是两个例子:
1. 指针指向C风格的字符串:
```cpp
char str[] = "hello world";
char *pstr = str;
```
2. 指针指向C++的std::string对象:
```cpp
#include <iostream>
#include <string>
int main() {
std::string str = "hello world";
const char *pstr = str.c_str();
std::cout << pstr << std::endl;
return 0;
}
```
在第一个例子中,我们定义了一个字符数组`str`,然后将指针`pstr`指向该数组的首地址。这样,`pstr`就指向了字符串"hello world"。
在第二个例子中,我们使用了C++的std::string类。首先,我们创建了一个std::string对象`str`并初始化为"hello world"。然后,我们使用`c_str()`成员函数获取字符串的C风格表示,并将其赋值给指针`pstr`。最后,我们通过`std::cout`输出了指针指向的字符串。
相关问题
怎么用指针指向string类型
可以使用以下语法将指针指向 string 类型:
```
string str = "hello";
string* ptr = &str;
```
此时,`ptr` 将指向 `str` 的地址。可以通过解引用指针来访问字符串内容:
```
cout << *ptr << endl; // 输出 "hello"
```
还可以通过指针修改字符串内容:
```
*ptr = "world";
cout << str << endl; // 输出 "world"
```
c++指向string的指针
C++中,可以使用指针来指向字符串(string)。字符串是由字符组成的字符数组,可以通过指针来访问和操作。
要指向一个字符串,可以声明一个指向字符(char)类型的指针,并将其指向字符串的首地址。例如:
```cpp
char* strPtr; // 声明一个指向字符的指针
std::string str = "Hello, World!"; // 定义一个字符串
strPtr = &str[0]; // 将指针指向字符串的首地址
```
在上面的例子中,`strPtr`是一个指向字符的指针,通过`&str`将其指向字符串`str`的首地址。
通过指针,可以对字符串进行各种操作,比如输出字符串、修改字符串等。例如:
```cpp
std::cout << strPtr << std::endl; // 输出字符串
```
上述代码将输出字符串`Hello, World!`。