TC一打开显示的就是乱字符。

来源:百度知道 编辑:UC知道 时间:2024/05/30 22:27:22
能解决吗?

#include<stdio.h>
#include<string.h>
int main(){
char a[4+1] = "abcd";
if(strcmp(a, "abcd")==0)
printf("\a");
}

首先字符串数组最后要多存一个字符'\0'表示结束, 所以一定要多开一位。 第二, 字符串的比较是调用字符串函数strcmp(), 当比较的两个字符串完全相等时, 返回值为0。

a表示的是数组都首地址, "abcd"是字符串常量的首地址, 你的那种写法的意思是, 比较两个地址是不是相等, 而不是比较两个字符串的内容是不是相等

“必然成立”, 呵呵, 说的这么绝对, 我都不好意思给你解答了:)