我无法通过引用传递我的字符串,不在这里我使用 char 二维,我可以使用字符串,但我想用 char 数组来做,在 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;
}