为什么这样不行
#include<stdio.h>
#include<stdlib.h>
void ex(char *str1, char *str2);
int main(){
char *str1 = "aaa", *str2 = "bbb";
ex(str1, str2);
printf("%s %s",str1,str2);
return 0;
}
void ex(char *str1, char *str2){
char *temp = (char *)malloc(50*sizeof(char));
temp = str1;
str1 = str2;
str2 = temp;
free(temp);
}