C语言编写的时候构建有什么用,为什么我写的这个程序构建之后,就出现逻辑错误。程序没问题吧?

#include "time.h"#include <stdio.h>#include "stdlib.h"#include "string.h"#define XINXI 2main(){ char LY[5] = "leiyi"; char PN[4] = "puni"; int leiyi[XINXI] = {2,3}; int pini[XINXI] = {3,4}; char playerTypeInformation[100] =""; gets(playerTypeInformation); if (strcmp(playerTypeInformation,"LY")==0) printf ("玩家输入的精灵是雷伊"); else if (strcmp(playerTypeInformation,"PN")==0) printf ("玩家输入的信息是谱尼"); else printf ("玩家输入的信息不存在");}这是源代码,下图是,未构建直接运行的情况,构建之后运行就显示的是“玩家输入的信息不存在”

char LY[5] = "leiyi";
char PN[4] = "puni";
上面两句错了,应该改为
char LY[6] = "leiyi";
char PN[5] = "puni";

字符串是特殊的数组,末尾会自动填入/0
温馨提示:答案为网友推荐,仅供参考
相似回答