gpt4 book ai didi

c - 程序无法到达代码的特定部分

转载 作者:行者123 更新时间:2023-11-30 17:39:11 24 4
gpt4 key购买 nike

我完全不确定为什么我的代码会这样做。在下面的代码片段中,它永远不会到达代码的底部部分(printf 语句以及 3 次释放和返回 -1)。即使我给它一个无效的输入,它仍然会运行,直到它搜索完数组的所有部分,然后就像没有问题一样退出。

int findtargetline(char* targ, char* filename, int count, char** depend) {
char* line = malloc(160*sizeof(char));
char* buffer = malloc(16);
FILE* fil = file_open(filename);
int i = 0;

for (i = 0; i < count; i++) {
if (depend[i] == NULL) {
printf("ERROR: MISSING DEPENDENCY DATA STRUCTURE");
return -1;
}
else {
strcpy(line, depend[i]);
line = line + strspn(line, delims);
sscanf(line, "%s ", buffer);

if (strcmp(buffer, targ) == 0) {
free(line);
free(buffer);
fclose(fil);
printf("%s, and %d\n", targ, i);
return i;
}
}
}

printf("wtf");

free(line);
free(buffer);
fclose(fil);
return -1;
}

我觉得答案应该非常简单,但我没有看到。有人知道为什么吗? D:

最佳答案

当您调用计数为 0 的函数时,您期望什么?

你不知道吗?你为什么不告诉我们?

关于c - 程序无法到达代码的特定部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21917810/

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