函数介绍
函数原型:int strcmp(const char* str1, const char* str2)
头 文 件:#include <string.h>
返 回 值:str1 = str2 则返回0,
str1 > str2 则返回大于0的值,
str1 < str2 则返回小于0的值
说明:
判断两个字符串大小
1)ACSII码 2)长度
注:区分大小写比较的,如果希望不区分大小写进行字符串比较,可以使用stricmp函数
strcmp()函数首先将str1字符串的第一个字符的ACSII值减去str2第一个字符的ACSII值(自左向右逐个字符相比,直到出现不同的字符或遇'\0'为止)
若差值为零则继续比较下去;若差值不为零,则返回差值。
特别注意:strcmp可用于比较两个字符串常量或比较数组和字符串常量,不能比较数字等其他形式的参数。
(只允许输入三次密码,如果密码正确则提示登录成功如果三次均输入错误,则退出程序)
假设密码为123456
#include<stdio.h>
#include<string.h>
int main()
{
int i = 0;
char password[20] = { 0 };
for (i = 0;i<3;i++)
{
printf("请输入密码>:");
scanf("%s", password);
两个字符串比较不能用等于号==;应该使用strcmp函数
Eg:错误写法:
if(password=="123456")
if (strcmp(password, "123456") == 0)
{
printf("登录成功\n");
break;
}
else
{
printf("密码错误,请重新输入>:\n");
}
}
if (i == 3)
printf("三次均输入错误,退出程序\n");
return 0;
}