gpt4 book ai didi

c - 使用 getchar 从文件接收输入并插入 char 指针给出段错误

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

有一个名为 prog1.txt 的文件正在被读入我的程序。为了执行,我使用文件名和一个“<”符号来读入文件。 (./a.out < prog1.txt)。然而,当我读入它时,我立即收到一个段错误。这是我写的解决这个问题的内容:

    char *strPtr;
while(((*strPtr = getchar()) != EOF) && (*strPtr != '\n')) {
strPtr++;
}

我已经研究了其他问题,但找不到解决方案适用于此的问题。是什么导致段错误??

最佳答案

您有一个指针 char* strPtr,但它可能没有指向您可以使用的任何内容。您需要分配一些内存。 char* strPtr = malloc(numChars); 你还应该在分配完内存后释放它:free(strPtr);

您需要设置可以读入的最大字符数。在这种情况下,我使用 numChars。

关于c - 使用 getchar 从文件接收输入并插入 char 指针给出段错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29424523/

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