不是说*(*(a+0)+0)相当于值么?那为什么不能与*(*(a+0)+1)交换值呢?
#include <stdio.h>int main()
{
char *a[]={"qa","da"},b[10]; 我想把"qa"中换成"aq"
if (*(*(a+0)+0)>*(*(a+0)+1)) 这里*(*(a+0)+0)是'q',*(*(a+0)+1)是'a'
{ 我用b[0] 作为介质
b[0]=*(*(a+0)+0);
*(*(a+0)+0)=*(*(a+0)+1); 运行到这一步就崩溃了
*(*(a+0)+1)=b[0];
}
printf ("%c",*(*(a+0)+0));
printf ("%c",*(*(a+0)+1));
}
不是说*(*(a+0)+0)相当于值么?那为什么不能与*(*(a+0)+1)交换值呢?