gpt4 book ai didi

c - 使用将字符串分成段落的 C 程序时遇到问题。句子和单词

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

程序需要从用户处获取输入文本和选项。在此阶段,我正在研究 ap: 选项,该选项从用户读取文本并将相应的数据附加到相应的数组中。 (此外,我还必须输入带有选项作为前缀的文本,例如 ap:Text,因为这就是测试我的程序的机器人输入它的方式。)。

代码如下:https://gist.github.com/Kritsos/03d08f29beb97d24eba1cbc4e83962ab

我知道理解它有点困难,所以我会尽力解释它。首先,我知道存在很多内存泄漏,一旦我使这 3 个功能正常工作,我就会处理它们。我尝试动态分配几乎所有内容(这就是我使用三重指针的原因),我希望分配是正确的,而不是问题的原因。 par 函数应该从输入文本中获取一个段落,这很容易,因为输入文本本身就是一个段落,所以我只需将文本复制到段落数组中。现在,我遇到问题的是发送和单词功能。两者都基于相同的逻辑。我从用户那里获取输入文本,尝试找到结束字符(“.!?;”对于句子“”对于单词),在那里放置一个“\0”,将字符串复制到相应的数组,然后执行相同的操作但我没有再次检查整个输入文本,而是从放置 '\0' + 1 的位置开始。

最佳答案

您的代码中有许多错误,导致当前崩溃的关键错误是第 8、32 和 59 行。所有与此相关的变体:

**paragraphs = realloc(**paragraphs, *num_par * sizeof(char *));

您正在对从未分配过的指针调用 realloc。

这里的教训不是“小心指针”或类似的东西,尽管显然你应该这样做。教训是,大量的间接性变得难以推理。您不应该尝试让三星级解决方案发挥作用,而应该探索一种不需要这些代码练习的不同方法。

关于c - 使用将字符串分成段落的 C 程序时遇到问题。句子和单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59518401/

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