64,654
社区成员
发帖
与我相关
我的任务
分享
2.int pstrcmp(const void *p1, const void *p2)
{
return strcmp(*(char * const *)p1, *(char * const *)p2);
//(char * const *)p1 p1应该是指向char× 的常量指针,说明此指针指向的char× 的内容不可变。
//*(char * const *)p1 应该是char× 的值。
}
高手能解释一下这个字符串数组的比较函数吗?(尤其是那转化的问题)
int pstrcmp(const void *p1, const void *p2)
{
return strcmp(*(char * const*)p1, *(char * const*)p2);
}
int main()
{
char stra[] = "abc";
char strb[] = "bcdefg";
cout << strcmp(stra,strb);
//cout << pstrcmp(stra,strb); 这句注释去掉 会异常退出 SO 你所说的这个字符串数组的比较函数 是不行的
return 0;
}