#include<stdio.h>
#include<assert.h>
int my_strcmp(const char*a,const char*b)
{
    while(*a&&*b&&*a==*b)
        a++,b++;
    if(*a&&*b)
        return(*a-*b);
    )
        ;
    &&*b)
        ;
    ;
}

int my_strcmp1(const char *str1, const char *str2)
{
     assert((str1 != NULL) && (str2 != NULL));
     ;
     while ( !(rt = *(unsigned char *)str1 - *(unsigned char*)str2 ) &&  *str2)
     {
         str1 ++;
         str2 ++;
     }
     )
     {
         rt = ;
     }
     )
     {
         rt = -;
     }
     return rt;
}  

int my_strcmp2(unsigned char *src, unsigned char *dst)
{
         ;
        while( ! (ret = *src - *dst) && *dst)
             ++src, ++dst;
         )
              ret = - ;
         )
              ret =  ;
        return( ret );
}

int my_strcmp3(const char *dest, const char *source)
{
   assert((NULL != dest) && (NULL != source));
   while (*dest && *source && (*dest == *source))
           {
                    dest ++;
                   source ++;
           }
   return *dest - *source;
}  

int my_strcmp4(const char* s1,const char * s2)
{
      for(;*s1==*s2;s1++,s2++)
        {
            if(*s1 == '\0')
                   ;
        }
      :);
}

int main()
{
    char *s1="abc",*s2="abcd";
    int m;
    m=my_strcmp4(s1,s2);
    printf("m=%d\n",m);
}

其它:
intstrcmp(p1,p2)
{
constchar*p1;
const char *p2;
{
registerconstunsignedchar*s1=(constunsignedchar*)p1;
registerconstunsignedchar*s2=(constunsignedchar*)p2;
unsignedreg_charc1,c2;
do{
c1=(unsignedchar)*s1++;
c2=(unsignedchar)*s2++;
if(c1=='\0')
returnc1-c2;
}while(c1==c2);
returnc1-c2;
}
libc_hidden_builtin_def(strcmp)
 
 
 

strcmp实现的更多相关文章

  1. Uva 11732 strcmp() Anyone?

    strcmp() Anyone? Time Limit: 2000MS   Memory Limit: Unknown   64bit IO Format: %lld & %llu [Subm ...

  2. Linux C 字符串函数 strlen()、strcat()、strncat()、strcmp()、strncmp()、strcpy()、strncpy() 详解

      strlen(返回字符串长度) 表头文件 #include <string.h> 定义函数 size_t strlen(const char *s); 函数说明 strlen()用来计 ...

  3. strcmp

     C++ Code  123456789101112   int strcmp(const char *dest, const char *source) {     assert((NULL !=  ...

  4. strlen(); strcpy(); strcat(); strcmp() ---笔记

    指针小知识点: int a =10; int *p=&a; int *q=p;        //p中保存的是a的地址 int *q=p;       //将p的值赋给q 作用是让q也指向a ...

  5. Strcmp(字符串1,字符串2)函数 Sizeof && strlen() Substr(a,b)

    Strcmp(字符串1,字符串2)函数 { strcmp函数是比较两个字符串的大小,返回比较的结果.一般形式是:  i=strcmp(字符串,字符串); 其中,字符串1.字符串2均可为字符串常量或变量 ...

  6. strcmp()&&mb_ereg_replace()&&ereg()

    主要记录两个函数,一个是strcmp(),一个是mb_ereg_replace() strcmp() php 5.3 以后字符串和数组比较会返回0 测试代码: PHP <?php $passwo ...

  7. strcmp函数使用总结

    Action() { /********************************* * Author:旺仔 * object:strcmp * date:2015-12-09 * fuc:我输 ...

  8. strcmp函数的使用

    Action() { /*********************************   * Author:旺仔   * object:strcmp   * date:2015-12-09    ...

  9. c/c++面试题(3)strcat/strcmp/strlen/strcpy的实现

    1.编写一个函数实现strlen以及strcpy函数. strcpy函数. 后面的字符串拷贝到一个字符数组中,要求拷贝好的字符串在字符数组的首 地址,并且只拷贝到'\0'的位置.原型是 char* m ...

  10. strcmp传入nil导致崩溃

    现象:连接电脑可以正常启动程序,不连接电脑启动程序就崩溃. 崩溃信息: BSXPCMessage received error for message: Connection invalid HW k ...

随机推荐

  1. hdoj1171 Big Event in HDU(01背包 || 多重背包)

    题目链接 http://acm.hdu.edu.cn/showproblem.php?pid=1171 题意 老师有一个属性:价值(value).在学院里的老师共有n种价值,每一种价值value对应着 ...

  2. Hadoop整理二(Hadoop分布式存储系统HDFS)

    一.背景 当数据集的大小超过一台独立物理计算机的存储能力时,就有必要对它进行分区(partition) 并存储到若干台单独的计算机上.管理网络中跨多台计算机存储的文件系统称为分布式文件系统 (dist ...

  3. webview内部跳转判断

    重写webview内的方法 webView.setWebViewClient(new WebViewClient() { @Override // 在点击请求的是链接是才会调用,重写此方法返回true ...

  4. 理解Linux的进程,线程,PID,LWP,TID,TGID

    在Linux的top和ps命令中,默认看到最多的是pid (process ID),也许你也能看到lwp (thread ID)和tgid (thread group ID for the threa ...

  5. AORUS GA-Z270X-Gaming 5開箱

    「AORUS」這個品牌名稱由埃及神祇荷魯斯(戰爭與狩獵之神)的名字衍生而成.荷魯斯通常被勾勒為獵鷹的形象,因此獵鷹的頭形被用作AORUS品牌的商標於2014年,本來只做為用在電競筆電及一些週邊方面,但 ...

  6. iOS Sprite Kit教程之编写程序以及Xcode的介绍

    iOS Sprite Kit教程之编写程序以及Xcode的介绍 Xcode界面介绍 一个Xcode项目由很多的文件组成,例如代码文件.资源文件等.Xcode会帮助开发者对这些文件进行管理.所以,Xco ...

  7. BZOJ.4316.小C的独立集(仙人掌 DP)

    题目链接 \(Description\) 求一棵仙人掌的最大独立集. \(Solution\) 如果是树,那么 \(f[i][0/1]\) 表示当前点不取/取的最大独立集大小,直接DP即可,即 \(f ...

  8. [HNOI2008]玩具装箱

    OJ题号: BZOJ1010 思路: 斜率优化动态规划. 由题意得状态转移方程为$f_i=\displaystyle{\min_{j=0}^{i-1}}\{f_j+\left(i-j-1+\displ ...

  9. BZOJ 1022 [SHOI2008]小约翰的游戏John AntiNim游戏

    1022: [SHOI2008]小约翰的游戏John Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 1475  Solved: 932[Submit][ ...

  10. java中的几种对象(PO,VO,DAO,BO,POJO)

    一.PO :(persistant object ),持久对象 可以看成是与数据库中的表相映射的java对象.使用Hibernate来生成PO是不错的选择. 二.VO :(value object) ...