在 GNU C 库 (glibc) 中,除了 bsearchqsort 之外,还有其他一些提供常见算法功能的函数。以下是一些类似的函数:

  1. heapsort
  • 简介: 执行堆排序算法。
  • 手册页: man heapsort
  1. mergesort
  • 简介: 执行归并排序算法。
  • 手册页: man mergesort
  1. tsearch, tfind, tdelete, twalk
  • 简介: 提供二叉树搜索、插入、删除和遍历功能。
  • 手册页: man tsearch
  1. lsearch, lfind
  • 简介: 提供线性搜索功能。
  • 手册页: man lsearch
  1. hsearch, hcreate, hdestroy
  • 简介: 提供哈希表的创建、查找和销毁功能。
  • 手册页: man hsearch
  1. strfry
  • 简介: 打乱字符串的字符顺序。
  • 手册页: man strfry
  1. psort
  • 简介: 用于排序的并行版本。
  • 手册页: 通常没有独立的 man 页,可能需要参考相关文档或源码。
  1. radixsort, sradixsort
  • 简介: 执行基数排序算法。
  • 手册页: man radixsort
  1. alphasort
  • 简介: 用于比较 struct dirent 类型数组中的元素,通常与 scandir 函数一起使用。
  • 手册页: man alphasort
  1. scandir
  • 简介: 用于扫描目录内容并将结果存储在数组中。
  • 手册页: man scandir
  1. versionsort
  • 简介: 对 struct dirent 类型数组中的元素进行版本号排序。
  • 手册页: man versionsort
  1. fsearch
  • 简介: 用于文件中的字符串查找。
  • 手册页: 通常没有独立的 man 页,可能需要参考相关文档或源码。
  1. getopt, getopt_long, getopt_long_only
  • 简介: 用于命令行参数解析。
  • 手册页: man getopt
  1. qsort_r
  • 简介: qsort 的可重入版本,允许传递上下文数据。
  • 手册页: man qsort_r
  1. drand48, erand48, lrand48, mrand48, srand48, seed48
  • 简介: 一组用于生成伪随机数的函数。
  • 手册页: man drand48
  1. rand, srand
  • 简介: 标准库中的随机数生成器。
  • 手册页: man rand
  1. nftw
  • 简介: 用于遍历目录树的函数,类似于 ftw,但更灵活。
  • 手册页: man nftw
  1. ftw
  • 简介: 用于遍历目录树的函数。
  • 手册页: man ftw
  1. glob, globfree
  • 简介: 执行文件名模式匹配。
  • 手册页: man glob
  1. fnmatch
  • 简介: 测试字符串是否匹配模式。
  • 手册页: man fnmatch
  1. argp_parse
  • 简介: 用于处理命令行参数的高级解析功能。
  • 手册页: man argp_parse
  1. crypt
  • 简介: 单向密码加密函数,通常用于密码验证。
  • 手册页: man crypt
  1. strtok, strtok_r
  • 简介: 用于字符串分割,strtok_r 是线程安全版本。
  • 手册页: man strtok
  1. shm_open, shm_unlink
  • 简介: 用于创建和删除 POSIX 共享内存对象。
  • 手册页: man shm_open
  1. mmap, munmap
  • 简介: 用于内存映射文件或设备到内存地址空间。
  • 手册页: man mmap
  1. sem_open, sem_close, sem_unlink, sem_post, sem_wait
  • 简介: POSIX 信号量操作函数。
  • 手册页: man sem_open
  1. pthread_create, pthread_join, pthread_mutex_lock, pthread_mutex_unlock, pthread_cond_wait, pthread_cond_signal
  • 简介: POSIX 线程库函数,用于创建和管理线程及其同步机制。
  • 手册页: man pthread_create
  1. posix_fadvise, posix_madvise
  • 简介: 提供文件访问或内存访问的建议,以优化性能。
  • 手册页: man posix_fadvise
  1. setjmp, longjmp
  • 简介: 用于非本地跳转,通常用于错误处理和信号处理。
  • 手册页: man setjmp
  1. signal, sigaction
  • 简介: 信号处理函数。
  • 手册页: man signal
  1. time, gettimeofday, clock_gettime, difftime
  • 简介: 时间获取和操作函数。
  • 手册页: man time
  1. strftime, strptime
  • 简介: 时间格式化和解析函数。
  • 手册页: man strftime
  1. realpath
  • 简介: 解析文件的绝对路径。
  • 手册页: man realpath
  1. getopt_long
  • 简介: 解析长选项的命令行参数。
  • 手册页: man getopt_long
  1. qsort_r
  • 简介: qsort 的可重入版本,允许传递上下文数据。
  • 手册页: man qsort_r
  1. mblen, mbtowc, wctomb, mbstowcs, wcstombs
  • 简介: 宽字符和多字节字符转换函数。
  • 手册页: man mblen
  1. iconv, iconv_open, iconv_close
  • 简介: 字符编码转换函数。
  • 手册页: man iconv
  1. setlocale, localeconv, nl_langinfo
  • 简介: 设置和查询程序的区域设置信息。
  • 手册页: man setlocale
  1. strcasecmp, strncasecmp
  • 简介: 不区分大小写的字符串比较函数。
  • 手册页: man strcasecmp
  1. strdup, strndup
  • 简介: 复制字符串,并返回指向新字符串的指针。
  • 手册页: man strdup
  1. realpath
  • 简介: 解析并返回文件的绝对路径。
  • 手册页: man realpath
  1. basename, dirname
  • 简介: 提取路径中的文件名或目录名。
  • 手册页: man basename
  1. mkstemp, mkdtemp
  • 简介: 创建临时文件或目录。
  • 手册页: man mkstemp
  1. getaddrinfo, freeaddrinfo, gai_strerror
  • 简介: 网络地址和主机名解析。
  • 手册页: man getaddrinfo
  1. inet_pton, inet_ntop
  • 简介: 点分十进制和网络字节序之间的转换。
  • 手册页: man inet_pton
  1. getopt, getopt_long, getopt_long_only
  • 简介: 命令行参数解析函数。
  • 手册页: man getopt
  1. execve, execvp, execvpe
  • 简介: 执行新程序。
  • 手册页: man execve
  1. wait, waitpid
  • 简介: 等待子进程终止。
  • 手册页: man wait
  1. pipe, popen, pclose
  • 简介: 管道创建和管理函数。
  • 手册页: man pipe
  1. sigsetjmp, siglongjmp
  • 简介: 带信号屏蔽的非本地跳转。
  • 手册页: man sigsetjmp
  1. pselect, select
  • 简介: 监控文件描述符集合。
  • 手册页: man select
  1. poll
  • 简介: 监控多个文件描述符。
  • 手册页: man poll
  1. epoll_create, epoll_ctl, epoll_wait
  • 简介: 高效的 I/O 事件通知。
  • 手册页: man epoll
  1. timer_create, timer_settime, timer_gettime, timer_delete
  • 简介: POSIX 定时器函数,用于创建和管理定时器。
  • 手册页: man timer_create
  1. clock_getres, clock_nanosleep, clock_settime
  • 简介: 时钟和时间相关的函数,用于获取和设置时间。
  • 手册页: man clock_getres
  1. sleep, usleep, nanosleep
  • 简介: 线程休眠函数,用于延迟一段时间。
  • 手册页: man sleep
  1. aio_read, aio_write, aio_error, aio_return, aio_suspend
  • 简介: 异步 I/O 操作函数。
  • 手册页: man aio_read
  1. readdir, opendir, closedir, rewinddir
  • 简介: 目录流操作函数,用于读取和管理目录内容。
  • 手册页: man readdir
  1. fseek, ftell, rewind
  • 简介: 文件指针操作函数,用于定位文件指针的位置。
  • 手册页: man fseek
  1. fopen, freopen, fclose
  • 简介: 文件流操作函数,用于打开、重定向和关闭文件。
  • 手册页: man fopen
  1. fread, fwrite
  • 简介: 文件读写操作函数,用于读取和写入文件数据。
  • 手册页: man fread
  1. fflush
  • 简介: 刷新文件流缓冲区。
  • 手册页: man fflush
  1. fprintf, fscanf
  • 简介: 格式化文件输入输出函数。
  • 手册页: man fprintf
  1. snprintf, vsnprintf
  • 简介: 安全的格式化输出函数,用于避免缓冲区溢出。
  • 手册页: man snprintf
  1. asprintf, vasprintf
  • 简介: 动态分配内存并格式化输出到字符串中。
  • 手册页: man asprintf
  1. sscanf, vsscanf
  • 简介: 从字符串中读取格式化输入。
  • 手册页: man sscanf
  1. getcwd, chdir
  • 简介: 获取和改变当前工作目录。
  • 手册页: man getcwd
  1. mkdir, rmdir
  • 简介: 创建和删除目录。
  • 手册页: man mkdir
  1. chmod, fchmod, chown, fchown
  • 简介: 更改文件的权限和所有者。
  • 手册页: man chmod
  1. stat, fstat, lstat
  • 简介: 获取文件状态信息。
  • 手册页: man stat
  1. link, symlink, readlink, unlink
  • 简介: 创建和删除硬链接与符号链接。
  • 手册页: man link
  1. dup, dup2
  • 简介: 复制文件描述符。
  • 手册页: man dup
  1. fcntl
  • 简介: 文件控制操作函数,用于操作文件描述符。
  • 手册页: man fcntl
  1. ioctl
  • 简介: 设备控制操作函数,用于控制设备文件。
  • 手册页: man ioctl
  1. mprotect
  • 简介: 更改内存保护属性。
  • 手册页: man mprotect