#include <stdio.h>
#include <string.h>
void main()
{
char str[20],str1[7]="ABC",str2[]="DEFGHI";
char *p2="BCD",*p1="ABC";
strcpy(str,str1);
// C语言字符串赋值不能写为 str=str1;
int equ=strcmp(str1,str2);
equ= (str1>str2);
// C语言字符串比较不能写为 equ=(str1==str2);
strcat(str1,str2); //将str2的内容追加在str1的后面
bool a=("ABC">"BCD");
int len = strlen(str2);
// 字符串str2的长度为3,虽然它在内存占有4字节的空间
// 因为添加一个\0字符作为字符串结束标志
puts(str1); //输出字符串str1的内容
printf("abc\123\\b\0EF");
}
请问是哪个语句导致的,原因是什么?