字符串比较函数strcmp()如何使用
时间: 2024-06-06 21:11:30 浏览: 83
strcmp()函数是C语言中的字符串比较函数,用于比较两个字符串是否相等。它的使用方式如下:
int strcmp(const char *str1, const char *str2);
其中str1和str2是需要比较的字符串。函数将返回一个整数值,如果str1等于str2,返回0;如果str1小于str2,返回负数;如果str1大于str2,返回正数。
相关问题
字符串比较函数strcmp
strcmp函数是C语言中的字符串比较函数,用于比较两个字符串的大小。该函数的原型为int strcmp(const char *str1, const char *str2),其中str1和str2分别为需要比较的两个字符串。函数返回值为0表示两个字符串相等,返回值大于0表示str1大于str2,返回值小于0表示str1小于str2。在使用该函数时,需要注意传入的参数必须为指向字符串的指针,且字符串必须以'\0'结尾。
代码示例:
```
#include <stdio.h>
#include <string.h>
int main() {
char str1[] = "hello";
char str2[] = "world";
int result = strcmp(str1, str2);
if (result == 0) {
printf("str1 equals to str2\n");
} else if (result > 0) {
printf("str1 is greater than str2\n");
} else {
printf("str1 is less than str2\n");
}
return 0;
}
```
请用matlab语言,定义两个字符串str1=’Welcomw to Guangdong R2016’和str2=’Welcome to Guangdong r2016’,试用字符串比较函数strcmp、strncmp、strcmpi和strncmpi比较str1和str2两个字符串。
可以使用以下MATLAB代码进行字符串比较:
```matlab
% 定义两个字符串
str1 = 'Welcomw to Guangdong R2016';
str2 = 'Welcome to Guangdong r2016';
% 使用 strcmp 函数比较两个字符串,区分大小写
res1 = strcmp(str1, str2);
fprintf('strcmp(str1, str2) = %d\n', res1);
% 使用 strncmp 函数比较两个字符串的前 8 个字符,区分大小写
res2 = strncmp(str1, str2, 8);
fprintf('strncmp(str1, str2, 8) = %d\n', res2);
% 使用 strcmpi 函数比较两个字符串,不区分大小写
res3 = strcmpi(str1, str2);
fprintf('strcmpi(str1, str2) = %d\n', res3);
% 使用 strncmpi 函数比较两个字符串的前 8 个字符,不区分大小写
res4 = strncmpi(str1, str2, 8);
fprintf('strncmpi(str1, str2, 8) = %d\n', res4);
```
运行结果:
```
strcmp(str1, str2) = 0
strncmp(str1, str2, 8) = 1
strcmpi(str1, str2) = 1
strncmpi(str1, str2, 8) = 1
```
解释一下结果:
- strcmp 函数比较两个字符串,区分大小写。因为 `str1` 和 `str2` 中的 'w' 和 'W' 不相等,所以比较结果为 0。
- strncmp 函数比较两个字符串的前 8 个字符,区分大小写。因为前 8 个字符都相等,所以比较结果为 1。
- strcmpi 函数比较两个字符串,不区分大小写。因为 `str1` 和 `str2` 中的 'w' 和 'W' 相等,所以比较结果为 1。
- strncmpi 函数比较两个字符串的前 8 个字符,不区分大小写。因为前 8 个字符都相等,所以比较结果为 1。
阅读全文