s_cmp.c

来自「InsightToolkit-1.4.0(有大量的优化算法程序)」· C语言 代码 · 共 46 行

C
46
字号
#include "f2c.h"
#include "netlib.h"

/* compare two strings */

#ifdef KR_headers
integer s_cmp(a0, b0, la, lb) char *a0, *b0; ftnlen la, lb;
#else
integer s_cmp(char *a0, char *b0, ftnlen la, ftnlen lb)
#endif
{
register unsigned char *a, *aend, *b, *bend;
a = (unsigned char *)a0;
b = (unsigned char *)b0;
aend = a + la;
bend = b + lb;

if(la <= lb)
        {
        while(a < aend)
                if(*a != *b)
                        return( *a - *b );
                else
                        { ++a; ++b; }

        while(b < bend)
                if(*b != ' ')
                        return( ' ' - *b );
                else    ++b;
        }

else
        {
        while(b < bend)
                if(*a == *b)
                        { ++a; ++b; }
                else
                        return( *a - *b );
        while(a < aend)
                if(*a != ' ')
                        return(*a - ' ');
                else    ++a;
        }
return(0);
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?