我有以下代码,我想知道两件事 这个表达式 (*++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) 将切换默认的参数是“-”,后跟除x和n之外的每个字符(如-a或-P)
3) 不会切换的参数是那些不以“-”开头的参数
关于c - 这段代码的参数是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26406976/