c - 在 fopen 中使用 arg vector

标签 c file-io

我希望有一个文件名作为 C 程序的参数。我在 fopen 中尝试了所有可能的方法,如下所示。

fp = fopen(*argv[2], "r");

也使用了 "*argv[2]" 但没有用。我想知道我哪里出错了,以便我可以正确使用它。谢谢!

最佳答案

应该是

fp = fopen(argv[2], "r");

请注意,argv[0] 将包含您的 exe 名称(带路径),您传递的其他参数将从 argv[1] 开始。

引用this有关在 C 中使用命令行参数的更多详细信息。

在您的主函数中,如果您将 char **argv 作为参数,下标为 argv[1] 的数组会自动将其转换为 char * 这是 fopen 期望的参数。

关于c - 在 fopen 中使用 arg vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10799153/

相关文章:

c - 用 C 中的值填充 union 数组

c - 当使用 openMP 并行化代码时,哪些变量应该是私有(private)的和/或firstprivate,什么时候合适?

java - 在文件系统中保存文件的更好策略?

c++ - 想要创建许多不同的文件,但名称不同

c - 尝试链接 jsoncpp 并将其包含在 CUDA 项目中时出错 : undefined reference to `Json::Value::Value(Json::ValueType)'

c - vim 在头文件中自动写入函数。克朗

c - c中char数组的指针运算

c - 如何避免 C 文件名中的 "\"问题?

c# - 如何在不影响 "last write time"的情况下更改文件

c++ - 在 C++ 中一次读取一个文件