如何将char **中的每个字符串打印到printf()?

时间:2015-05-08 16:33:19

标签: c

我有一个main()例程,它将所有命令行参数作为'char **'接收。如何使用printf()?

显示控制台中的每个参数

谢谢!

2 个答案:

答案 0 :(得分:3)

如果你的意思是命令行参数,那么我认为最简单的方法看起来像

#include <stdio.h>

int main( int argc, char * argv[] )
{
    while ( *argv ) printf( "%s\n", *argv++ );
}

考虑到(C标准,5.1.2.2.1程序启动,第N2页)

  

- 如果argc的值大于零,则指向的字符串   由argv [0]代表程序名称; argv [0] [0]应为null   如果主机无法提供程序名称,则为字符   环境。如果argc的值大于1,则为字符串   由argv [1]指出通过argv [argc-1]代表该程序   参数。

答案 1 :(得分:0)

这很容易。请使用谷歌或使用此:

    #include <stdio.h>

    int main(int argc, char *argv[])
    {
        int i=argc;
        while((i--)>1)
            printf("%s\n",argv[i]);
        return 0;
    }