首页 > 其他分享 >strcmp函数

strcmp函数

时间:2022-11-06 22:31:20浏览次数:60  
标签:src 函数 dest char arr2 arr1 strcmp

strcmp一般用法

#include <stdio.h>

#include<string.h>

int main()

{

char arr1[] = { "abcde" };

char arr2[] = { "abcd" }; //vs2022编译器下如果相同为0,如果arr1>arr2,结果则为1,反之则为-1;

printf("%d", strcmp(arr1, arr2));

return 0;

}

strcmp在vs编译器下的实现

#include<assert.h>
#include<stdio.h>
#include<string.h>
int my_strcmp(char* dest, char* src)

{

assert(*dest && *src);

while (*dest == *src)

{

if (*dest == '\0')

{

return 0;

}

*dest++;

*src++;

}

if (*dest > *src)

return 1;

else

return - 1;

}

int main()

{

char arr1[] = { "abcde" };

char arr2[] = { "abcd" };

printf("%d\n",my_strcmp(arr1, arr2));

}

strcmp函数在其他编译器下的实现

#include<assert.h>
#include<string.h>
#include<stdio.h>
int my_strcmp(char* dest, char* src)
{
assert(*dest && *src);
while (*dest == *src)
{
if (*dest == '\0')
{
return 0;
}
*dest++;
*src++;
}
return(*dest - *src);//如果dest>src就是正数,反之;
}
int main()
{
char arr1[] = { "abcde" };
char arr2[] = { "abcd" };
printf("%d\n",my_strcmp(arr1, arr2));
}

有不同看法或者补充,私信老大爷,感谢!

标签:src,函数,dest,char,arr2,arr1,strcmp
From: https://blog.51cto.com/u_15835473/5827657

相关文章

  • 函数原型以及相关知识
    先说结论:ANSIC以及之前的C语言可以不声明(declare)函数原型(prototype)而直接调用(call)函数,但是C99以及之后的语言标准要求先声明函数原型。但是各大编译器可以有自己的实现,如......
  • 函数高级
    1.函数的默认参数:为函数的形参列表赋予默认值语法:  即不传值,函数就默认使用自己的数据。例子:注意事项:1)若函数某个位置已经有默认参数,那么从这个位置开始往后们都......
  • c语言学习--静态函数
    静态函数 #include<stdio.h>//这是静态函数,静态函数只能在当前文件调用,其他文件下面的函数是没法调用到这个函数的staticvoidfun1(){printf("helloworld"......
  • Angular 14 inject 函数使用过程中的一些注意事项
    inject函数只能用于构造器阶段,这意味着其只能在构造器函数作用域(constructorfunctionscope)和字段初始化器(fieldinitializers)中使用。下列代码会遇到运行时错误(runtim......
  • Angular 14 新的 inject 函数介绍
    Angular14提供了一些非常有趣的特性:类型化表单(typedforms)、独立组件(standalonecomponents),以及本文将要介绍的内容,即在所谓的构造器阶段(constructorphase)使用inj......
  • EXCEL用DB函数计算商品房4年后每年的折旧额
    DB函数主要是用于计算通过固定余额递减法来计算某资产在一定时间内的折旧值,其语法结构为:DB(cost,salvage,life,period,month),各参数的含义如下:cost参数:该参数用于指定资产原值......
  • c原因学习---指针作为函数的形参
     指针作为函数的形参,可以改变实参的值。#include<stdio.h>//交换两个变量的值intswap(intx,inty){intk=y;y=x;x=k;printf("xi......
  • 【模板】Z 函数(扩展 KMP)
    postedon2022-08-0823:29:53|under模板|source#include<cstdio>#include<cstring>#include<algorithm>usingnamespacestd;typedeflonglongLL;intn,......
  • [代码审计]信呼协同办公系统2.2存在文件上传配合云处理函数组合拳RCE
    文章目录​​写在前面​​分析​​​​脚本​​写在前面本次强网杯决赛的一个题,还是蛮有意思的,代码可以在github拿到​​​https://github.com/rainrocka/xinhu​​分析首......
  • 指针+函数解决问题
    问题:交换两个整形的数值#include<stdio.h>voidswap(int*pa, int*pb){inttmp=*pa;*pa=*pb;*pb=tmp;}int main(){int a=45;int b=86;printf("a=%db=%d\n",a,b);sw......