结构字符串之间的区别是什么

时间:2018-04-04 03:48:55

标签: c++ string char

在大学里,我看到我的老师制作了一个程序,就像这样制作一个结构:

#include <iostream>
using namespace std;

struct string_
{
  char _string [255];
}

struct person
{
   string_ birthday[5]; 
   string_ name[5];
}x;

我认为他这样做是因为以这种方式操纵琴弦似乎更容易...... 问题来自于我以这种方式进行考试而且他说这是不必要的

如何保存不执行此操作的字符串而不使用数据类型“string”。类似......?

#include <iostream>
using namespace std;

struct person
{
   char birthday[5][255]; 
   char name[5][255];
}x;

1 个答案:

答案 0 :(得分:2)

可能是因为你不能在函数中返回数组(char[255]),但你可以返回一个包含数组的结构。

例如

char[255] foo(); // cant do that
char* foo(); // can do that, but instead of copying string, only pointer to its begining is returned
string_ foo(); // can do that, and whole struct, that contains char[255] will be copied (returned)