我想将argv [] []与空格字符进行比较。但是,它不会让我。当我尝试使用其他字符,例如'a','b','c'等时,它可以工作,但是如果有空格,它就不起作用。
if(argv[1][1] == ' ')
{
printf("Space Detected\n");
}
我尝试使用空格ASCII号,没有机会。 我试图使用其他字符的ASCII码,它可以工作。
我也试过'\',没机会。
是否有另一种方法可以将argv [] []与空格进行比较?
限制:我不允许在命令行中使用引号,反斜杠。
这是我正在处理的代码:
int main(int argc, char *argv[])
{
printf("Program Running...\n\n");
if((argc == 2) || ((argv[1][0] == '-') && (argv[1][1] == 'A')) )
{
printf("Option A.\n");
printf("argv[1][2]: %c\n", argv[1][2]);
printf("argv[1]: %s\n", argv[1]);
if(argv[1][2] == ' ')
{
printf("Space Detected\n");
}
}
return 0;
}
答案 0 :(得分:2)
程序的参数由空格分隔。因此,如果您想要实际输入一个,则必须使用""
,(至少在Windows中)
控制台示例;
这只是一个参数:
my.exe "a b c"
三个参数:
my.exe a b c