C语言中的strncmp

lichongyang
lichongyang
lichongyang
111
文章
0
评论
2019年10月12日17:46:43 评论 294 次浏览
摘要

strncmp

strncmp

函数名: strncmp  

功 能: 串比较  

用 法: int strncmp(char *str1, char *str2, int maxlen);  

说明:此函数功能即比较字符串str1和str2的前maxlen个字符。如果前maxlen字节完全相等,返回值就=0;在前maxlen字节比较过程中,如果出现str1[n]与str2[n]不等,则返回(str1[n]-str2[n])。  

程序例:  

#include <string.h>  
#include <stdio.h>  
int main(void)  
{  
char *buf1 = "aaabbb", *buf2 = "bbbccc", *buf3 = "ccc";  
int ptr;  
ptr = strncmp(buf2,buf1,3);  
if (ptr > 0)  printf("buffer 2 is greater than buffer 1\n");  
else if(ptr<0)  printf("buffer 2 is less than buffer 1\n");  
ptr = strncmp(buf2,buf3,3);  
if (ptr > 0)  printf("buffer 2 is greater than buffer 3\n");  
else if(ptr<0)  printf("buffer 2 is less than buffer 3\n");  return(0);  
}

 -----打印结果为buffer 2 is greater than buffer 1buffer 2 is less than buffer 3 注意该函数判断 buffer 2和buffer 1大小的是根据子串aaa和bbb的Asc值的大小,而不是其长度。注意该函数判断 buffer 3和buffer 2大小的是根据子bbb和ccc的Asc值的大小,而不是其长度。所以会出现buffer 3 > buffer2 另外,C里面非零的数值都为true.

历史上的今天
10月
12
  • 我的微信
  • 这是我的微信扫一扫
  • weinxin
  • 我的微信小程序
  • 我的微信小程序扫一扫
  • weinxin
lichongyang
  • 本文由 发表于 2019年10月12日17:46:43
  • 转载请务必保留本文链接:https://www.chongyangli.com/archives/c%e8%af%ad%e8%a8%80%e4%b8%ad%e7%9a%84strncmp/
BCD和HEX转换程序 C语言

BCD和HEX转换程序

在写程序时,经常需要进行BCD码和ASCII码的转换,下面是我常用的转换程序,如果大家有需要,直接调用就行了,呵呵! unsigned char BCD2HEX(unsigned char bcd_d...
Python 资源大全中文版 Python

Python 资源大全中文版

Python 资源大全中文版 环境管理 管理 Python 版本和环境的工具 p:非常简单的交互式 python 版本管理工具。官网pyenv:简单的 Python 版本管理工具。官网Vex:可以在虚...
Linux修改栈空间的大小 编程语言

Linux修改栈空间的大小

        有时候写程序处理大量的数据,需要分配很大的数组来存放一些数据,但有时候分配的数组太大的话运行时会出现断错误。这种情...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: