比较C语言中的两个字符数组 如果使用“=”比较C语言中的两个字符数组,会比较什么?

比较C语言中的两个字符数组 如果使用“=”比较C语言中的两个字符数组,会比较什么?,c,C,答案并不相同 char string1 [] = "Hello"; char string2 [] = "Hello"; if (string1 == string2){ printf("Equal"); } else { printf("Not Equal"); } return 0; } 如果比较C语言中的两个字符数组,会比较什么 使用“==” 将比较阵列的基址 如果要比较数组的内容,需

答案并不相同

char string1 [] = "Hello";
char string2 [] = "Hello";

if (string1 == string2){
    printf("Equal");
} else {
    printf("Not Equal");
   }
return 0;
}

如果比较C语言中的两个字符数组,会比较什么 使用“==”

将比较阵列的基址

如果要比较数组的内容,需要使用strcmp

如果比较C语言中的两个字符数组,会比较什么 使用“==”

将比较阵列的基址


如果要比较数组的内容,需要使用
strcmp

string1
string2
是数组名称,它们被转换为指向
char
的指针,因此使用
=
将比较这些指针

指针值是每个
char
数组的不同内存地址,因此它是正确的输出


如果要比较这两个数组,则可以选择
strncmp

string1
string2
是转换为指向
char
的指针的数组名称,因此使用
=
将比较这些指针

指针值是每个
char
数组的不同内存地址,因此它是正确的输出


如果要比较这两个阵列,则可以选择
strncmp

要更好地理解,请运行此程序并阅读

#包括
#包括
int main()
{
char string1[]=“你好”;
char string2[]=“你好”;
//正在检查string1和string2的基址,这两个基址将不相等
if(string1==string2){
printf(“相等:string1=%u和string2=%u\n”,string1,string2);
}否则{
printf(“不相等:string1=%u和string2=%u\n”,string1,string2);
}
//strcmp检查存储在string1和string2中的内容
如果(strcmp(string1,string2)==0){
printf(“相等\n”);
}否则{
printf(“不相等\n”);
}
返回0;
}

要更好地理解,请运行此程序并阅读

#包括
#包括
int main()
{
char string1[]=“你好”;
char string2[]=“你好”;
//正在检查string1和string2的基址,这两个基址将不相等
if(string1==string2){
printf(“相等:string1=%u和string2=%u\n”,string1,string2);
}否则{
printf(“不相等:string1=%u和string2=%u\n”,string1,string2);
}
//strcmp检查存储在string1和string2中的内容
如果(strcmp(string1,string2)==0){
printf(“相等\n”);
}否则{
printf(“不相等\n”);
}
返回0;
}

您只需使用strcmp检查两个字符串是否相等

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

int main()
{
    char string1 [] = "Hello";
    char string2 [] = "Hello";
    if(strcmp(string1, string2) == 0)
    {
         printf("Equal\n");
    }
    else 
    {
         printf("Not Equal\n");
    }
    return 0;
}
#包括
#包括
int main()
{
char string1[]=“你好”;
char string2[]=“你好”;
如果(strcmp(string1,string2)==0)
{
printf(“相等\n”);
}
其他的
{
printf(“不相等\n”);
}
返回0;
}

您只需使用strcmp检查两个字符串是否相等

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

int main()
{
    char string1 [] = "Hello";
    char string2 [] = "Hello";
    if(strcmp(string1, string2) == 0)
    {
         printf("Equal\n");
    }
    else 
    {
         printf("Not Equal\n");
    }
    return 0;
}
#包括
#包括
int main()
{
char string1[]=“你好”;
char string2[]=“你好”;
如果(strcmp(string1,string2)==0)
{
printf(“相等\n”);
}
其他的
{
printf(“不相等\n”);
}
返回0;
}

检查它将比较阵列的基址这是一个非常常见的常见问题解答。对于那些回答了这个问题的人:你可以在。向下滚动至常见问题->字符串。然后以dupe关闭投票。选中它将比较阵列的基址这是一个非常常见的常见问题。对于那些回答了这个问题的人:你可以在。向下滚动至常见问题->字符串。然后以傻瓜的身份结束投票。谢谢。这解决了我的问题谢谢。这解决了我的问题