C 将文本文件的参数从main传递到其他函数

C 将文本文件的参数从main传递到其他函数,c,C,如何从cmd传递参数,该参数等于我要用main以外的函数打开的文件名 例如,我想在cmd中以“myprogram-openmyfile.txt”的形式运行这个程序,并且我想使用另一个函数来计算这个文件中的字符、空格或其他内容。如何将文件名(在本例中为argv[2])传递给另一个可以使用fopen的函数?谢谢你抽出时间 int main(int argc, char **argv) { if((argc==3) && (strcmp("-open", argv[1]) == 0))

如何从cmd传递参数,该参数等于我要用main以外的函数打开的文件名

例如,我想在cmd中以“myprogram-openmyfile.txt”的形式运行这个程序,并且我想使用另一个函数来计算这个文件中的字符、空格或其他内容。如何将文件名(在本例中为argv[2])传递给另一个可以使用fopen的函数?谢谢你抽出时间

int main(int argc, char **argv)
{
if((argc==3) && (strcmp("-open", argv[1]) == 0))
etc.

只需传入
argv[2]

int main(int argc, char **argv)
{
    if((argc==3) && (strcmp("-open", argv[1]) == 0))
    {
        FILE *fp = fopen(argv[2]);
        //OR
        otherFuncThatCallsFopen(argv[2]);
    }
}

argv[2]
是指向第二个参数的有效
char*

您可以编写一个带有签名的函数,如
无符号整数计数字符(const char*文件名)

并使用
count\u字符(argv[2])调用它。

查看如何将
“-open”
传递到
strcmp()
?为什么将argv[2]传递给另一个函数会有任何不同?你是在问如何定义另一个函数吗?