小甲鱼 发表于 2016-3-31 02:37:42

strcmp -- 比较字符串

strcmp 函数文档

函数概要:

strcmp 函数用于比较两个字符串。

该函数从第一个字符开始,依次比较每个字符的 ASCII 码大小,直到发现两个字符不相等或抵达结束符('\0')为止。


函数原型:

#include <string.h>
...
int strcmp(const char *s1, const char *s2);

参数解析:


参数含义
s1指向待比较的字符串 1
s2指向待比较的字符串 2


返回值:

返回一个整数表示两个字符串的大小关系:


返回值含义
< 0 字符串 1 的字符小于字符串 2 对应位置的字符
0 两个字符串的内容完全一致
> 0 字符串 1 的字符大于字符串 2 对应位置的字符


演示:

#include <stdio.h>
#include <string.h>

int main()
{
      char str1 = "FishC.com";
      char str2 = "FishC.com";

      if (!strcmp(str1, str2))
      {
                printf("两个字符串完全一致!\n");
      }
      else
      {
                printf("两个字符串不同!\n");
      }

      return 0;
}


版权归鱼C工作室(www.fishc.com)所有,转载请注明来源!

ピエロ 发表于 2016-6-10 14:03:35

sofa

wuwenhuan1989 发表于 2016-7-20 15:43:24

已温习

mhp0114 发表于 2017-2-15 10:57:02

get it

John_Cavaliar 发表于 2017-8-2 12:18:27

666666666666666666666666666666666666666666

郭恩峰 发表于 2017-9-25 12:09:28

strcmp(a,b)返回值只有3种,即:1,0,-1.

www434566 发表于 2017-11-30 15:12:45

那个!怎么用的

Julia999 发表于 2018-12-4 08:40:08

get it!

fansuregrin 发表于 2019-9-25 11:31:29

{:10_281:}

抖肩膀的乔奶奶 发表于 2019-11-8 15:09:02

了解

Acacia 发表于 2020-2-17 16:12:16

不染 发表于 2020-3-28 13:07:50

Lin.ZY 发表于 2020-4-9 21:58:56

Acacia 发表于 2020-2-17 16:12


我的理解是:
str1实际字符是'FishC.com\0',
str2实际字符是'FishC.com\0\0\0\0\0\0\0\0\0\0\0'
所以在strcmp比较的时候
如果只是strcmp(str1,str2)返回不是0;在前加个!就是为0了,两个字符串完全一致。

DreamF 发表于 2020-5-9 15:01:58

为什么我实验了一下只有三种情况:1,-1,0

wf1822 发表于 2020-7-29 08:55:16

强啊

panger 发表于 2020-10-22 22:05:10


MELLOC

1140913594 发表于 2021-2-18 16:11:27

讲得好

灵神冲冲冲 发表于 2021-3-1 20:43:57

学到了

polo456 发表于 2021-3-8 09:13:46

加感叹号,是指if如果值是真的时候,就执行,其实这个也可以写成if(strcat(str1,str2) == 0)

polo456 发表于 2021-3-8 09:15:04

加感叹号,是指if如果值是真的时候,就执行,其实这个也可以写成if(strcat(str1,str2) == 0)
页: [1] 2
查看完整版本: strcmp -- 比较字符串