回调函数
回调函数指的是在某个特定事件发生时由另一个函数调用的函数。
回调函数通常作为参数传递给另一个函数,以便在适当的时候被调用。
总的来说,回调函数是一种灵活的机制,可以让我们在程序中动态地定义并实现特定的功能,从而实现更加模块化和可扩展的代码结构。
qsort函数
qsort是C标准库中的一个函数,用于对数组或其他数据集合进行快速排序操作,其原型定义在stdlib.h头文件中。
void qsort(void *base, size_t size, int (*compare)(const void *, const void*));
//base:指向要排序的数组的起始位置
//nmemb:数组中元素个数
//size:数组中每个元素的大小(以字节为单位)
//compar:比较函数指针,用于定义元素之间的比较规则
下面是一个简单的实例用法:
#include <stdio.h>
#include <stdlib.h>
int compare(const void *a, const void *b) {
return (*(int*)a - *(int*)b);
}
int main() {
int arr[] = {4, 2, 9, 5, 1};
int n = sizeof(arr) / sizeof(arr[0]);
qsort(arr, n, sizeof(int), compare);
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
return 0;
}
在这个示例中,我们使用qsort函数对整数数组进行排序,排序规则由自定义的compare函数定义。
sizeof和strlen的对比
1. sizeof
sizeof只关注占用内存空间大小,不在乎存放什么数据,单位字节,是操作符。
如果操作数是类型的时候,计算的是使用类型创建的变量所占内存空间的大小。
2.strlen
strlen是统计\0之前字符串中字符个数,包含头文件string.h,是库函数。
如果没有\0会持续向后找,可能会发生越界。
标签:arr,函数,int,void,qsort,sizeof,指针 From: https://blog.csdn.net/Fming_/article/details/136783459