这种比较是如何进行的?
#include <stdio.h>
#include <string.h>
int main(void) {
char arr[]="WELCOME";
char arr1[]="WELCOME";
if (arr<=arr1)
printf("equal");
else
printf("not equal");
return 0;
}
在这个程序中,if 条件总是转到 else, 所以请有人帮助我如何在此处进行比较。
最佳答案
比较最终会询问两个数组 arr
和 arr1
在内存中相对于彼此的位置。它正在询问哪个具有较低的地址。
如果您尝试比较两个数组中包含的字符串值,请使用 strcmp:
if(strcmp(arr, arr1) <= 0) ...
关于c - 比较 "if (arr<=arr1)"在给定程序中如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31165579/