qsort () 문자 그룹 정렬

1666 단어
1. 먼저 프로그램 하나 보기
#include <cstdio>
int main()
{
	char *a[10]={"111","222"};
	printf("%s
%s
%s
",a,*a,a[0]); printf("%d:\t%s
",sizeof(a[0]),a[1]); printf("

"); char b[10][10]={"111","222"}; printf("%s
%s
%s
",b,*b,b[0]);// , , 。 printf("%d:\t%s
",sizeof(b[1]),b[1]); return 0; } /* sizeof(a) a char *a[n]; a[i] ,a ,sizeof(a[0])=4; char a[n][m]; a[i] ,a ,sizeof(a[0])=m; */

2. 두 개의 정렬 프로그램
#include <cstdio>
#include <cstring>
#include <cstdlib>
int cmp(const void *a,const void *b)
{
	char **pa=(char **)a;
	char **pb=(char **)b;
	return strcmp(*pa,*pb);
}
int main()
{
	char *a[3]={"222","111","333"};
	qsort(a,3,sizeof(a[0]),cmp);
	printf("%s
%s
%s
",a[0],a[1],a[2]); return 0; } /* a , cmp (char**) , *pa *pb ( : ),strcmp(*pa,*pb) */ ////////////////////////////////////////// #include <cstdio> #include <cstring> #include <cstdlib> int cmp(const void *a,const void *b) { char *pa=(char *)a; char *pb=(char *)b; return strcmp(pa,pb); } int main() { char a[3][10]={"222","111","333"}; qsort(a,3,sizeof(a[0]),cmp); printf("%s
%s
%s
",a[0],a[1],a[2]); return 0; } /* a , cmp (char*) , pa pb , strcmp(pa,pb) : a , */

참조 사이트 주소:http://c.chinaitlab.com/c/skill/200907/790644.html

좋은 웹페이지 즐겨찾기