私はこの構造を持っています:
struct student {
int id;
string name;
string surname;
};
私がする必要があるのは、この宣言で関数を作成することです:
char* surname_name (student Student)
これは、この「姓、名前」のような形式で入力したすべての生徒をフォーマットし、その上にポインターを戻します。
私がこれまでに行ったことは次のとおりです。
char* surname_name (student Student){
char *pointer= (char*) malloc (sizeof(char)*(Student.name.length + Student.surname.length + 2)); // + 2 because of space and comma
string::iterator it;
int i=0;
for (it= Student.surname.begin(); it != Student.surname.end(); it++){
(*pointer)[i] = it; // here it gives me error
}
... // here still should be added code for comma, space and name
return pointer;
}
関数がこの宣言を行う必要があるのはタスク内にあるため、それ以外の方法では作成できません。これを正しく作る方法は?