字符串赋值给字符数组后乱码

#include<ctype.h>#include<stdio.h>#include<stdbool.h>#defineMSG_LEN80boolis_palindrom... #include <ctype.h>
#include <stdio.h>
#include <stdbool.h>

#define MSG_LEN 80

bool is_palindrome(const char *message);
void read_line(char str[]);

int main(void)
{
char msg_str[MSG_LEN];

printf("Enter a message: ");
read_line(msg_str);
if (is_palindrome(msg_str))
printf("Palindrome\n");
else
printf("Not a palindrome\n");

return 0;
}

bool is_palindrome(const char *message){
bool flag=true;
char temp[MSG_LEN];
int i=0,j;
for (; *message != '\0'; message++)
if (isalpha(*message)){
temp[i]=tolower(*message);/*这里出现问题,temp输出乱码*/
i++;
}

for (j=0; j <= i-1 ; j++)
if (temp[j]!=temp[i-j]){
flag=false;
break;}

return flag;
}

void read_line(char str[])
{
int ch, i = 0;

while ((ch = getchar()) != '\n')
str[i++] = ch;
str[i] = '\0';
return;
}
展开
 我来答
White_MouseYBZ
2017-06-21 · TA获得超过4万个赞
知道大有可为答主
回答量:2.1万
采纳率:82%
帮助的人:6570万
展开全部
粗略看了代码,觉得不会有你说的那种情况。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式