如何排除 运行 可执行文件 C

how to exclude the running executable C

我正在编写一个处理目录和文件的程序。该程序将打开所有可访问目录并读取用户输入初始路径下的所有可访问文件。

问题是如果程序打开 运行 可执行文件,我会遇到段错误,我想知道是否有任何方法可以排除 运行 但包含的可执行文件所有其他文件?假设程序知道可执行文件的名称但不知道可执行文件的位置或初始路径

要解决您的问题,请检查 fopen() 的 return 值。如果您无法打开文件 returns NULL 并在 errno 中输入原因。您可以使用 strerror() 获取错误消息字符串。考虑使用 perror() 在循环文件时输出错误消息。

还有其他可能性,比如无法处理很长的行,但这是目前最有可能的问题。

这不会获得可执行文件,但可以解决您遇到的一般段错误问题,无论如何这是一件更合理的事情。