有一个名为prog1.txt的文件正在读入我的程序。要执行,我使用文件名和“

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

我研究过其他的问题,但是我找不到一个能解决这个问题的方法。是什么导致了分割错误??

最佳答案

您有一个指针char* strPtr,但它可能没有指向您可以使用的任何内容。你需要分配一些内存。char* strPtr = malloc(numChars);完成分配的内存后,您还应该释放它:free(strPtr);
您需要设置最多可读取的字符数。在这种情况下,我使用numChars。

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

10-11 15:55