我想知道是否有办法在 C 程序中访问标准输入文件的名称。我环顾四周,没有发现任何东西。例如
./a.out < file.txt
C 程序中有没有办法打印出文件名(file.txt)?
最佳答案
如果您使用的是 Linux,您可以通过阅读 /proc/[pid]/fd/0
来完成您想要的任务。或解析 lsof -p [pid]
,其中[pid]
是您的进程的进程 ID。
参见proce(5)
和lsof(8)
.
关于C 程序标准输入文件名访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22290605/