文字列を参照で渡すことができません。ここでは char 2-dimension を使用しています。string を使用することもできましたが、char array で実行したいと考えています。swap1 関数では文字列のスワップが行われ、swap 2 関数ではスワップが行われます。の整数が発生します。文字列の交換が機能していません。ご協力ありがとう御座います 。これを学ぶための良いリンクは大歓迎です。
void func(int *x,char (*y)[500]);
void swap2(int &x, int &y);
void swap1(char *a,char *b);
int main(void){
char str[4][500];
int a[4];
int i,j;
for(i=0;i<4;i++){
cin>>a[i];
cin>>str[i] ;
}
for(i=0;i<4;i++){
for(j=3;j>0;j--){
if(a[j]<a[j-1]){
swap2(a[j],a[j-1]);
swap1(str[j],str[j-1]);
}
}
}
return 0;
}
void swap1(char *a,char *b){
char *temp = a;
b = a;
a = temp;
}
void swap2(int &x, int &y){
int temp = x;
x = y;
y = temp;
}