博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
c语言编辑strcmp,C语言实现strcmp
阅读量:7024 次
发布时间:2019-06-28

本文共 3102 字,大约阅读时间需要 10 分钟。

注意转化为unsigned char:

strcmp.h

#ifndef STRCMP_H

#define STRCMP_H

/***************************************************

功能:比较字符串s1和s2。

一般形式:strcmp(s1,s2)

返回值:

当s1

当s1=s2时,返回值=0

当s1>s2时,返回值>0

****************************************************/

int cat_strcmp(const char *src, const char *dst) {

int ret = ;

while (!(ret = (*(unsigned char *)src - *(unsigned char *)dst)) && *dst)

++src, ++dst;

if (ret < )

ret = -;

else if (ret > )

ret = ;

return ret;

}

#endif

main:

#include "strcmp.h"

void test_strcmp();

int main() {

test_strcmp();

return ;

}

void test_strcmp() {

char *s1 = "compare", *s2 = "compase";

printf("%d\n", cat_strcmp(s1, s2));

char *s3 = "compare", *s4 = "compar";

printf("%d\n", cat_strcmp(s3, s4));

char *s5 = "compar", *s6 = "compare";

printf("%d\n", cat_strcmp(s5, s6));

printf("%d\n", cat_strcmp(s3, s6));

}

/**

拓展:

unsigned char和char:

http://blog.sina.com.cn/s/blog_5c6f793801019oij.html

http://blog.csdn.net/world7th/article/details/1543575

*/

C语言 &&num;183&semi; 实现strcmp函数 &&num;183&semi; 字符串比较

蓝桥杯练习场上碰到两个此类题了: 算法提高 11-1实现strcmp函数   时间限制:1.0s   内存限制:256.0MB      问题描述 自己实现一个比较字符串大小的函数,也即实现strcm ...

C语言实现strcmp&lpar;&rpar;和strcpy&lpar;&rpar;函数

#include #include char *strcpy(char *strDest, const char *strScr) { ...

oc语言学习之基础知识点介绍(二):类和对象的进一步介绍

一.类.对象在内存中的存储 /* 内存分区: 栈:局部变量 堆:程序员自己写代码申请开辟的 程序员自己维护,编译器现在帮我们自动优化了,它在合适的给我们加上了释放空间的语句,所以我们现在写的对象不会造 ...

C 实现strcmp&comma;strcpy&comma;strcat函数

基于C语言的strcmp,strcpy,strcat函数的实现.C语言是一个程序猿的基础,一定要重视. char* strcat ( char * dst , const char * src ) { ...

C 语言字符串的比较

C 语言字符串的比较 #include #include #include int main(vo ...

标准类型内建函数 cmp&lpar;&rpar;介绍

内建函数cmp()用于比较两个对象obj1 和obj2, 如果obj1 小于obj2, 则返回一个负整数,如果obj1 大于obj2 则返回一个正整数, 如果obj1 等于obj2, 则返回0.它的行 ...

改善C&num;程序的50种方法

为什么程序已经可以正常工作了,我们还要改变它们呢?答案就是我们可以让它们变得更好.我们常常会改变所使用的工具或者语言,因为新的工具或者语言更富生产力.如果固守旧有的习惯,我们将得不到期望的结果.对于C ...

&lpar;转&rpar;python字符串函数

原文:https://www.cnblogs.com/emanlee/p/3616755.html https://blog.csdn.net/luoyhang003/article/details/ ...

随机推荐

MongoDB基本命令用

成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操作. 输入help可以看到基本操作命令: show dbs:显示数据库列表  show collections:显 ...

C&num;日期格式转换

DateTime dt = DateTime.Now; // Label1.Text = dt.ToString();//2005-11-5 13:21:25 // Label2.Text = dt. ...

BZOJ3039&colon; 玉蟾宫&amp&semi;wikioi2491 玉蟾宫

3039: 玉蟾宫 Time Limit: 2 Sec  Memory Limit: 128 MBSubmit: 430  Solved: 265[Submit][Status] Descriptio ...

使用约束给tableview添加暂无数据的提示

在tableview没有数据的时候,我们经常需要在tableview的正中间插入一张图片,来提示用户暂无数据 /** * 添加一个view,提示暂无数据 */ - (void)addPromptVie ...

JavaScript 实现发布消息后,距离当前时间的实现

某条消息发布后,距离当前时间多久的时间显示 //显示发布时间的函数 function pastTime(_createTime) { //var createTime = _createTime.su ...

进程命令ps&sol;top&sol;kill

进程: 通俗的说就是 当前正在执行的一个程序 命令: ps 英文: process status 作用: 查看进程的详细状况 选项: a:显示终端上的所有进程,包括其他用户的进程 u:显示进程的详细状 ...

Linux根据MAC地址自动设置IP

Linux根据MAC地址自动设置IP #!/bin/sh #============config============ route_defa=60.12.70.65 addr_ip= link_ma ...

POJ 2230 Watchcow(欧拉回路:输出点路径)

题目链接:http://poj.org/problem?id=2230 题目大意:给你n个点m条边,Bessie希望能走过每条边两次,且两次的方向相反,让你输出以点的形式输出路径. 解题思路:其实就是 ...

jekyll 安装使用

1. 安装     条件: ruby gem 注意版本,同时建议使用国内的镜像 gem install jekyll bundler   2. 创建网站   jekyll new my-awesome ...

你可能感兴趣的文章
[Android学习笔记四] 自定义Android组件之组合方式创建密码框组件
查看>>
ciscodk教你卸载Linux软件
查看>>
Linux Shell脚本生产环境下安全地删除文件
查看>>
Oracle中scn讲解
查看>>
在Java中实现MongoDB的Group功能
查看>>
我的友情链接
查看>>
Haproxy+Keepalived+apache实现高可用
查看>>
python网络编程实现TCP和UDP连接
查看>>
Java数据库连接代码集合
查看>>
MHA配置文件参数
查看>>
php测试耗时
查看>>
我的友情链接
查看>>
Linux Sendmail 服务器配置及应用
查看>>
主流NoSQL数据库评测之Tokyo Cabinet
查看>>
airodump-ng wlan0mon doesn't work
查看>>
iostat 实例分析
查看>>
php学习日记
查看>>
Qt新建项目
查看>>
初学linux相关问题1
查看>>
DevExpress v15.1:WinForms控件功能升级(二)
查看>>