strcmp函数是什么

小白 QA 2020-04-13 11:26:40 阅读(...)

strcmp函数用于比较两个字符串并根据比较结果返回整数。基本形式为strcmp(str1,str2),若str1=str2,则返回零;若str1&str2,则返回负数;若str1&str2,则返回正数。

strcmp 函数是 string compare(字符串比较)的缩写,用于比较两个字符串并根据比较结果返回整数。基本形式为 strcmp(str1,str2),若 str1=str2,则返回零;若 str1<str2,则返回负数;若 str1>str2,则返回正数。

number 数字

语法

extern int strcmp(const char *s1,const char *s2);

说明

规则

当 s1<s2 时,返回为负数;

当 s1=s2 时,返回值= 0;

当 s1>s2 时,返回正数。

即:两个字符串自左向右逐个字符相比(按 ASCII 值大小相比较),直到出现不同的字符或遇’’为止。如:

1.”A”<“B” 2.”A”<“AB” 3.”Apple”<“Banana” 4.”A”<“a” 5.”compare”<“computer”

特别注意:strcmp(const char *s1,const char * s2)这里面只能比较字符串,即可用于比较两个字符串常量,或比较数组和字符串常量,不能比较数字等其他形式的参数。

ANSI 标准规定,返回值为正数,负数,0 。而确切数值是依赖不同的 C 实现的。

当两个字符串不相等时,C 标准没有规定返回值会是 1 或 -1,只规定了正数和负数。

有些会把两个字符的 ASCII 码之差作为比较结果由函数值返回。但无论如何不能以此条依据作为程序中的流程逻辑。

0个人收藏 收藏

相关推荐

  • Ansible

    Ansible是什么

    Ansible是一个开源软件供应,配置管理和应用程序部署工具。它可以在许多类Unix系统上运行,并且可以配置类似Unix的系统以及Microsoft Windows。它包含自己的声明性语言来描述系统配置。
  • 代理 Proxy

    PAC是什么

    代理自动配置(Proxy Auto Config),简称PAC。PAC文件是一个包含JavaScript形式的函数。这个函数返回一个包含一个或多个访问规则的字符串。用户代理根据这些规则适用一个特定的代理器或者直接访问。
  • gets是什么

    gets是什么

    gets从标准输入设备读字符串函数,其可以无限读取,不会判断上限,以回车结束读取,所以程序员应该确保buffer的空间足够大,以便在执行读操作时不发生溢出。
  • sprintf是什么

    sprintf是什么

    sprintf是字符串格式化命令,把格式化的数据写入某个字符串中,即发送格式化输出到string所指向的字符串。sprintf是个变参函数。使用sprintf对于写入buffer的字符数是没有限制的,存在buffer溢出可能性。
  • Objective-C

    Objective-C是什么语言

    Objective-C是一种通用、高级、面向对象的编程语言。它扩展了标准的ANSI C编程语言,当前主要支持的编译器有GCC和Clang。 Objective-C的商标权属于苹果公司,也是这个编程语言的主要开发者。
  • Transact-SQL

    Transact-SQL 是什么

    Transact-SQL(又称T-SQL)是在Microsoft SQL Server和Sybase SQL Server上的ANSI SQL实现,与Oracle的PL/SQL性质相近,被使用为核心的查询语言。