当前位置: 首页 > news >正文

C语言qsort函数

排序qsort

  1. int
int cmp(const void *a, const void *b)
{return *(int *)a - *(int *)b;//先强转成int型,后解引用取值比较大小
}
  1. 字符串数组 char a[] = “hello world” //字符串数组,存放的是字符
int cmp(const void *a, const void *b)
{return *(char*)a - *(char *)b;//实质是转化成ascii值比较;
}
  1. 字符串指针数组排序 char *b[] = { “hello” , “world”};字符串指针数组,存放的是指针即元素地址,指针指向其中的元素
int cmp(const void *a, const void *b)
{return strcmp(*(char **)a, *(char**)b);
  1. 结构体排序
struct Stu
{int age;char name[20];
};
//比较结构体中元素的年龄
int cmp_age(const void* e1, const void* e2)
{//本质是比较整形return ((struct Stu*)e1)->age - ((struct Stu*)e2)->age;
}
//比较名字
int cmp_name(const void* e1, const void* e2)
{//本质是字符串比较->使用strcmp函数return strcmp(((struct Stu*)e1)->name, ((struct Stu*)e2)->name);
}

补充字符串

  1. 字符串定义:
char *str1 = {"Hello world!"};  // 方式一 (可省略{})
char str2[] = {"Hello world!"}; // 方式二 (可省略{})
char str3[] = {'H', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd', '!', '\0'}; // 方式三
char str4[16] = {'H', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd', '!', '\0'}; // 方式四
  1. 字符串指针数组
char* parr[] ={"good head","strength body","smooth foot"} ;

那么数组首元素是char* 类型的,char*类型的地址就是char**是二级指针。
在这里插入图片描述

http://www.lryc.cn/news/183968.html

相关文章:

  • 如何使用 Hotshot 通过文字生成 GIF 动画
  • 吃鸡高手必备!这些技巧帮你提高战斗力!
  • XV6 操作系统实验
  • leetcode - 双周赛114
  • 【LeetCode刷题笔记】双指针
  • 互联网Java工程师面试题·Memcached 篇·第二弹
  • 特斯拉被称为自动驾驶领域的苹果
  • stm32之HAL库操作PAJ75620
  • 医学影像归档与通讯系统(PACS)系统源码 PACS三维图像后处理技术
  • web漏洞-PHP反序列化
  • Redis-分布式锁
  • 什么时候使用继承,好莱坞原则(设计模式与开发实践 P11+)
  • 蓝桥等考Python组别十四级001
  • TI单芯片毫米波雷达代码走读(二十七)—— 角度维(3D)处理之通道间幅相一致性补偿
  • 数据结构 2.2 单循环链表
  • 矩阵距离——多源BFS
  • 关于在 Notion 中使用 Markdown 语法
  • sigmoid和softmax函数有什么区别
  • 第五章:最新版零基础学习 PYTHON 教程—Python 字符串操作指南(第七节 - Python 中使用 % 进行字符串格式化)
  • 【网络安全 --- 工具安装】VMware 16.0 详细安装过程(提供资源)
  • Eclipse MAT解析headp dump,total size小于file size
  • 【数据挖掘】2022年 Quiz 1-3 整理 带答案
  • AcWing 288. 休息时间,《算法竞赛进阶指南》,环形与后效性处理
  • 一文掌握Linux系统信息查看命令(CPU、内存、进程、网口、磁盘、硬件)
  • UE5.1编辑器拓展【三、脚本化资产行为,删除无引用资产】
  • 防抖和节流的实现
  • alsa pcm接口之阻塞和非阻塞打开和异步通知模式
  • Python Random模块详解
  • Vue3 模糊搜索筛选
  • 【MVC】C# MVC基础知识点、原理以及容器和管道