gpt4 book ai didi

将 char 数组转换为 int 以停止程序

转载 作者:太空宇宙 更新时间:2023-11-04 00:29:21 25 4
gpt4 key购买 nike

我正在创建一个编辑距离程序,它接受两个字符串指针并返回它们之间的编辑距离。我遇到的唯一问题是结束程序。基本上,当用户为两个字符串输入 -1 时,程序应该结束。我一直在尝试所有类型的事情和搜索,但似乎无法让它停止。这是我的:

char * word1;
char * word2;
char string1[1000];
char string2[1000];
int d;


do{
printf("Enter first string:");
scanf("%s", &string1);
printf("Enter second string:");
scanf("%s", &string2);
if((int)string1[0] == -1 && (int)string2[0] == -1)
break;
printf("%d\n", string1[0]);
word1 = string1;
word2 = string2;

printf("%s\n", word1);
printf("%s\n", word2);
d = distance (word1, word2);
printf ("The edit distance between %s and %s is %d.\n",word1, word2, d);
}while((int)string1[0] != -1);

return 0;

最佳答案

检查 (int)string1[0] == -1 还不够好。此条件检查 string1 的第一个字符是否为“-1”。当然这不是真的,因为您输入了两个字符“-”和“1”(以及终止符 \0)。

您可以通过两种方式检查是否正确。作为蜇伤:

!strcmp(string1, "-1")

作为整数:

atoi(string1) == -1

关于将 char 数组转换为 int 以停止程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33579557/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com