21xrx.com
2024-09-20 00:19:11 Friday
登录
文章检索 我的文章 写文章
C++如何返回字符串数组?
2023-07-04 21:31:15 深夜i     --     --
C++ 返回 字符串数组

C++是一种支持面向对象编程的高级程序设计语言,它被广泛用于软件开发、游戏开发、网络编程等领域。在C++中,字符串数组是一种常见的数据类型,它可以用于存储一组字符串。

C++中返回字符串数组有几种方式:

1. 通过指针返回字符串数组

在函数中定义一个字符串数组,然后将它的首地址通过指针返回。示例代码如下:


#include <iostream>

#include <string>

using namespace std;

string* getStrings()

{

  static string arr[] = {"hello", "world", "c++"};

  return arr;

}

int main()

{

  string* strs = getStrings();

  for (int i = 0; i < 3; i++)

  {

    cout << strs[i] << endl;

  }

  return 0;

}

2. 通过引用返回字符串数组

通过引用返回字符串数组,也可以实现返回多个字符串的效果,方法与使用指针类似。示例代码如下:


#include <iostream>

#include <string>

using namespace std;

void getStrings(string &str1, string &str2, string &str3)

{

  str1 = "hello";

  str2 = "world";

  str3 = "c++";

}

int main()

{

  string strs[3];

  getStrings(strs[0], strs[1], strs[2]);

  for (int i = 0; i < 3; i++)

  {

    cout << strs[i] << endl;

  }

  return 0;

}

3. 通过vector返回字符串数组

vector是C++中的一个STL库容器,它可以动态地存储和管理一组元素。可以使用vector来存储字符串数组,并返回它的副本。示例代码如下:


#include <iostream>

#include <string>

#include <vector>

using namespace std;

vector<string> getStrings()

{

  vector<string> strs = {"hello", "world", "c++"};

  return strs;

}

int main()

{

  vector<string> strs = getStrings();

  for (unsigned int i = 0; i < strs.size(); i++)

  {

    cout << strs[i] << endl;

  }

  return 0;

}

总之,在C++中返回字符串数组有多种不同的方式,可以根据实际需要选择合适的方法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复