C语言的版本比较
admin
2023-08-16 03:15:30
0

对于C的语言的字符串比较,目前使用比较多的是将版本分段进行比较,下面就是使用C语言实现的版本比较,可用于物联网、嵌入式等的固件版本检测。

#define VERSION_PRE_LEN10/** * 将字符串形式的版本号转为数组形式的版本号 * @param version 字符串版本号 * @param ver_arr 数组形式版本号 * @return */ int get_version(char *version, int *ver_arr) { if (version == NULL) return -1; int index = 0; char num_str[VERSION_PRE_LEN]; char *cur = version; char *pos = strchr(version, '.'); while (pos != '\0') { memset(num_str, 0, VERSION_PRE_LEN); if (cur == version) { memcpy(num_str, cur, pos - cur); } else { memcpy(num_str, cur + 1, pos - cur); }ver_arr[index] = atoi(num_str); cur = pos; pos = strchr(pos + 1, '.'); index++; }memset(num_str, 0, VERSION_PRE_LEN); memcpy(num_str, cur + 1, version + strlen(version) - cur); ver_arr[index] = atoi(num_str); return 0; }/** * 字符串形式的版本号比较 * @param version1 * @param version2 * @param count 段数 * @return 0: version1=version2, 1: version1>version2, -1:version1 ver_arr2[index]) { return 1; } else if (ver_arr1[index] < ver_arr2[index]) { return -1; } }return 0; }

【C语言的版本比较】测试
#include #include #include int main() { char version1[] = "42345.724345.2323450.23450.248.25234520"; char version2[] = "42345.724345.2323450.23450.248.25234520"; if (compare_version(version1, version2, 6) > 0) { printf("version1 > version2"); } else if (compare_version(version1, version2, 6) < 0) { printf("version1 < version2"); } else { printf("version1 = version2"); }return 0; }

相关内容

热门资讯

超... 本文目录导航: 超级云计算是什么 怎么做难看的PPT 1、...
谢... 本文目录导航: 请问云主机是什么 云主机有什么好处 具体的教程,谢谢! 云...
w... 本文目录导航: wps是什么意思 ppt的新配置designer和morp...
大... 本文目录导航: 大专学什么专业务工率高? 未来十年务工率最高的几大专业都是...
软... 本文目录导航: 软件技术专升本可以报什么专业 云计算专升本可以报医学吗 ...
云... 本文目录导航: 云计算务工前景 云计算务工方向及前景怎样样 ...
学... 本文目录导航: 学云计算进去无能嘛 云计算技术与运行是干什么的 ...
中... 本文目录导航: 如何了解云计算,中国的云计算产业开展现状如何 云计算未来几...
云... 本文目录导航: 云计算1+x证书含金量 云计算须要考什么证书 ...
云... 本文目录导航: 云计算股票龙头股票有哪些? 普通云计算概念龙头股有哪些?...
大... 本文目录导航: 大专云计算技术运行务工方向 大专毕业证上是物联网,实践学习...
大... 本文目录导航: 大数据云计算有必要升本吗 内蒙古大专云计算技术与运行专业升...
9... 本文目录导航: 99%学霸假期逆袭必看网站 99%学霸假期逆袭必看网站 ...
云... 本文目录导航: 云计算属于哪个专业 云计算属于什么专业 计...
计... 本文目录导航: 计算机二级MSOffice上机操作题及答案 想做一篇关于解...
A... 本文目录导航: AI能否会彻底扭转上流职业市场,如律师、会计师和医师? A...
人... 本文目录导航: 人工智能芯片产业链有哪些? 更多本行业钻研剖析详见前瞻产业...
人... 本文目录导航: 人工智能会带来哪些风险? 或许有一天,人工智能机器人将取代...
a... 本文目录导航: ai智能写作软件哪个好 ai智能写作软件有哪些?ai智能对...
自... 本文目录导航: 自考本科计算机专业难吗 自考计算机专业须要考哪些科目 ...