gpt4 book ai didi

c - 我正在尝试创建一个程序来使用 c 搜索和替换文本文件中的单词

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

我输入以下代码只是为了实现搜索功能。我的想法是在函数搜索中创建 FILE 变量“fp”的副本,名称为“temp_fp”。我的问题是,当我增加 temp_fp 时,fp 也会增加。我花了几个小时才找到错误。是否可以创建 FILE 结构的副本?请帮助我。

#include <stdio.h>

int main(void)
{
FILE *source;
char key[100];
source = fopen("search.txt", "r);
if (source == NULL)
{
printf("null");
return 0;
}
//read keyword
scanf("%s", key);
fsearch(source, key);
fclose(source);
}

int fsearch(FILE fp, char *key)
{
char ch, *temp;
FILE *temp_fp;
while (!feof(fp))
{
temp = key;
ch = fgetc(fp);
temp_fp = fp;
while ((ch == *temp))
{
printf("ch=%c\tkey=%c\n", ch, *temp);
ch = fgetc(temp_fp);
temp++;
if (*temp == '\0')
return fp;
}
}
}

最佳答案

您正在创建一个指针 temp_fp,然后将该指针设置为 fp。这实际上并不是复制 fp,而是指向内存中与原始文件相同的位置。

此链接可能对您有用:https://www.cs.bu.edu/teaching/c/file-io/intro/

关于c - 我正在尝试创建一个程序来使用 c 搜索和替换文本文件中的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26784472/

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