C中的一个命令行参数

时间:2017-04-04 06:40:58

标签: c

编写接受一个命令行参数(您的名字)的c程序,并提示用户输入用户(您的姓氏),然后打印""欢迎使用操作系统,"& #34;到屏幕。

任何人都可以帮我解决这个问题吗?我知道它从下面使用这样的东西,但我不知道如何打印出来的东西?能给出完整的答案吗?提前致谢。

int main (int argc, int *argv[])

1 个答案:

答案 0 :(得分:1)

argc是一个整数,表示传入程序的命令行参数的数量。它是参数计数,因此是名称。 *argv[](或**argv取决于开发者偏好)表示实际参数。 argv的正确名称是参数向量,如果您熟悉该特定数据类型,这是有意义的。

传入的第一个参数,argc = 1是程序的名称。 Argc总是至少有一个,因为argv将始终至少包含程序的名称。

要回答您的问题,您需要传入第二个命令行参数argc = 2,其中argv [1]等于用户的名字。我们可以这样做:

int main(int argc, char** argv)
{
    // This line will print out how many command line arguments were passed in.
    // Remember that it will always be at least one because the name of the program
    // counts as an argument.
    printf("argc: %d", argc);

    // Remember that you want the second argument in argv,
    // so you have to call argv[1] because arrays in C 
    // are 0-index based. Think of them as offsets.
    printf("\nWelcome, %s", argv[1]);

    return 0;
}

这应该让你开始。您现在需要做的就是编写代码以从标准输入读取字符串并将其输出到控制台。

相关问题