c - 这段代码的参数是什么

标签 c

我有以下代码,我想知道两件事 这个表达式 (*++argv) 中的第一个是什么以及这个表达式后面加上 [0] 意味着什么? 假设名为“program”的程序在命令行中的哪些参数示例不会导致默认情况,但会导致其他两种或一种情况? 2)命令行中的哪些参数示例会导致默认? 3)以及一个不会导致 switch case 或默认情况的示例..

#include <stdio.h>

int main(int argc, char *argv[])  
{  
    int c, except = 0, number = 0; 
    while ((--argc) > 0 && (*++argv)[0] == '-')  
        while (c = *++(argv[0]))  
            switch (c) {  
            case 'x':  
                except = 1;  
                break;  
            case 'n':  
                number = 1;  
                break;  
            default:  
                printf(" illegal option %c\n", c);  
                exit(-1); 
                break;  
            }  
   ..more code
    return 0;  
}  

最佳答案

1) 将切换 x 大小写的参数为 -x/对于 n 则为 -n

2) 将切换默认的参数是“-”,后跟除xn之外的每个字符(如-a-P)

3) 不会切换的参数是那些不以“-”开头的参数

关于c - 这段代码的参数是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26406976/

相关文章:

c - scanf 和指针的问题

c - eventfd_write线程安全吗?

c - 'Table1' 未声明(在此函数中首次使用)

c - 使用 BIO_printf() 而不是 printf() 有什么好处?

c - Strcpy() 复制指针?

c - (Linux, C) 两个线程,屏幕上有两个独立的文本窗口,怎么办?

我看不懂的C代码

c - C 中的函数调用者(回调)?

c++ - 在通过网络文件系统共享的HOME下安装C C++库

c - 从简单的 C 程序获取核心转储