C语言-qsort的使用

qsort可实现任意数据的排序

使用形式

qsort(void* base,size_t num,size_t size,int (*compar)(const void*,const void*));

             |                        |              |                                     |

             |                        |              |                                     |

        数组的首元素地址 |              |                                     |

                                      |          数组的元素大小                 |

                                  数组的元素个数                          函数指针

该函数指针指针的是一个函数

指向的函数是用来比较待排序数组的两个元素

#include<stdio.h>
#include<stdlib.h>
int PaiXu(const void* p1, const void* p2)
{
	return (*(int*)p1 - *(int*)p2);
}
int main()
{
	int arr[] = { 1,3,5,7,9,2,4,6,8,0 };
	int rs = sizeof(arr) / sizeof(arr[0]);
	qsort(arr, rs, sizeof(int), PaiXu);
	for (int i = 0; i < rs; i++)
	{
		printf( "%d ", arr[i]);
	}
	return 0;
}

               

猜你喜欢

转载自blog.csdn.net/2301_79201049/article/details/134478907
今日推荐