BlackWhite_idea 发表于 2021-12-27 17:31:29

这里为什么i的值会随机分配一个数

#include<stdio.h>
#define MAX 128
int main()
{
    char strone;
    char strtwo;

    char *one = strone;
    char *two = strtwo;

    int i=1;

    printf("输入第一个字符串:");
    fgets(strone,MAX,stdin);

    printf("输入第二个字符串:");
    fgets(strtwo,MAX,stdin);

    while(1)
    {
      if(*one++ != *two++)
      {
            break;
      }
      i++;
    }

    if(*one=='\0'&&*two=='\0')
    {
      printf("两个字符串完全一致!!");
    }
    else
    {
      printf("两个字符串不完全相同,第%d个字符出现不同!");
    }
}

这里的i不应该等于2吗?

傻眼貓咪 发表于 2021-12-27 17:31:30

你的代码最后 printf("两个字符串不完全相同,第%d个字符出现不同!"); 没有 i 啊?你的 %d 输出何物?

人造人 发表于 2021-12-27 18:17:53

认真一点呀
printf("两个字符串不完全相同,第%d个字符出现不同!");
页: [1]
查看完整版本: 这里为什么i的值会随机分配一个数