gpt4 book ai didi

检查数组中是否存在字符串,如果不存在则将其添加到C中的数组中

转载 作者:行者123 更新时间:2023-11-30 19:33:58 25 4
gpt4 key购买 nike

在 C 语言中,如何搜索字符串数组中是否存在某个字符串,如果不存在,则将其添加到字符串数组中。

在我的代码中我得到一个文件路径 -

char *file_path;

我需要检查它是否已经存在于字符串数组(file_path 数组)中,如果存在则返回,否则将此 file_path 添加到字符串数组中。

有人可以帮我用 C 语言编写这段代码吗?

最佳答案

for(int i=0; i<dim; i++){
if(strcmp(file_path,array[i])==0) return 0;
}

//if it exits the loop it means that it did not find the string

array=realloc(array,(dim+1)*sizeof(char*));
strcpy(array[dim],file_path);

这应该没问题。请研究一下数组、字符串和函数。也就是说,如果您愿意改进代码,strncpy() 实际上比更简单的 strcpy() 更好。还可以查看操作动态内存的函数(Malloc、calloc、realloc...)我还假设您确实以正确的方式声明了数组(作为 char* array[dim])。此外,您还应该检查各个函数的返回值,但我会让您进行研究,因为看起来您刚刚开始使用 C 编程。

关于检查数组中是否存在字符串,如果不存在则将其添加到C中的数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44576988/

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