c++字符指针未解之谜 *a[i][0]
void strsort(a[11][256]){ //表示装255个字符的字符串有11个
char *temp;
~~temp=a[i]; (*a[i])=a[j][0]; *a[j]=temp;~~ //仅地址交换,这里不会写了
}
字符指针写法很迷……它不同于其他类型指针
测试一下:
void test(){
char *a=new char[5]{'1','3','5','7'}; int *b=new int (1357);
cout<<a<<' '<<b<<'\n'; //结果:输出a的字符串内容,b的地址
cout<<*a<<' '<<*b<<'\n'; //结果:输出a的字符串内容,b的内容
cout<<&a<<' '<<&b<<'\n'; //结果:输出a的地址,b的地址
}
建议不要给字符指针叠buff了
&min[4] ,0x2723ff730
min[4] ,0x561c43efe
min ,0x2723ff710
&min ,0x2723ff710
*min ,0x7ff76140545c