strncmp ( )【C语言库函数源代码】

本文介绍了C语言库函数`strncmp`的源代码实现,该函数用于比较两个字符串的前n个字符。通过示例展示了如何使用`strncmp`进行字符串比较,并提供了`Print`函数来打印比较结果。在示例中,分别展示了`strncmp`返回大于0、小于0和等于0的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C语言库函数源代码】

【本程序在Dev C++ 4.9.9.2 下编译通过】

/*

   Compares two strings for lexical order. 

   The comparison stops after: (1) a difference between the strings is found, (2) the end of the strings is reached, or (3) count characters have been compared.

   比较字符串first和last的前n个字符。first > last ,>0;first = last,=0;first < last, <0 。

*/

int my_strncmp(const char *first,const char *last,int count)

{

   if (!count)

      return(0);

   while (--count && *first && *first == *last)first++,last++;

   return( *(unsigned char *)first - *(unsigned char *)last );

}

void Print(char * str1,char *str2,int t,int n)

{

   char *p;

   p = str1;

   while(*p && (p-str1) < n) printf("%c",*p),p++;

   if(t > 0)

        printf("/tUpper Than/t");

     

   else if(t < 0)

      printf("/tLower Than/t");

   else

      printf("/tEqual/t/t");

   p = str2;

   while(*p && (p-str2) < n) printf("%c",*p),p++;

   printf("/n");

}

#define nn 3 

int main()

{

   char *str1= "ammana";

   char *str2 = "babi";

 

   Print(str1,str2,my_strncmp(str1,str2,nn),nn);

   Print(str2,str1,my_strncmp(str2,str1,nn),nn);

   Print(str2,str2,my_strncmp(str2,str2,nn),nn);

  

   system("pause");

   return 0;

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值