用指针判断两个字符串是否相等,不使用strcmp
时间: 2024-03-21 15:42:41 浏览: 29
可以使用指针逐一比较两个字符串的每个字符,实现代码如下:
```c
#include <stdio.h>
int main() {
char str1[100], str2[100];
printf("请输入字符串1:");
gets(str1);
printf("请输入字符串2:");
gets(str2);
int i = 0;
while (str1[i] == str2[i] && str1[i] != '\0' && str2[i] != '\0') {
i++;
}
if (str1[i] == '\0' && str2[i] == '\0') {
printf("两个字符串相等\n");
} else {
printf("两个字符串不相等\n");
}
return 0;
}
```
在这个例子中,使用了一个循环来逐一比较两个字符串的每个字符,当出现不同字符或者两个字符串已经比较完毕时,退出循环。最后判断两个字符串是否同时结束,如果结束则表示两个字符串相等,否则不相等。
相关问题
用指针的知识判断两个字符串是否相等,不使用strcmp
可以使用指针逐一比较两个字符串的每个字符,实现代码如下:
```c
#include <stdio.h>
int main() {
char str1[100], str2[100];
printf("请输入字符串1:");
gets(str1);
printf("请输入字符串2:");
gets(str2);
char *p1 = str1, *p2 = str2;
while (*p1 == *p2 && *p1 != '\0' && *p2 != '\0') {
p1++;
p2++;
}
if (*p1 == '\0' && *p2 == '\0') {
printf("两个字符串相等\n");
} else {
printf("两个字符串不相等\n");
}
return 0;
}
```
在这个例子中,使用了两个指针 `p1` 和 `p2` 分别指向两个字符串的首字符,使用循环逐一比较两个指针所指向的字符,当出现不同字符或者两个字符串已经比较完毕时,退出循环。最后判断两个指针所指向的字符是否同时为字符串结束符 `\0`,如果是则表示两个字符串相等,否则不相等。
不使用strcmp函数,怎样用指针比较两个字符串的大小
可以使用指针逐个比较两个字符串的字符,直到出现不相等的字符或者其中一个字符串结束。如果出现不相等的字符,则比较它们的ASCII码大小,谁大谁就排在后面,如果其中一个字符串先结束,则长度较短的字符串排在前面。
示例代码如下:
```c
#include <stdio.h>
int str_compare(char *s1, char *s2) {
while (*s1 && *s2) {
if (*s1 != *s2) {
return (*s1 > *s2) ? 1 : -1;
}
s1++;
s2++;
}
if (*s1) {
return 1;
} else if (*s2) {
return -1;
} else {
return 0;
}
}
int main() {
char s1[] = "hello";
char s2[] = "world";
int result = str_compare(s1, s2);
if (result > 0) {
printf("%s is greater than %s\n", s1, s2);
} else if (result < 0) {
printf("%s is less than %s\n", s1, s2);
} else {
printf("%s is equal to %s\n", s1, s2);
}
return 0;
}
```
输出结果为:
```
hello is less than world
```
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)