c - 如何将 argv[][] 与空格字符进行比较?

标签 c arrays compare space argv

我想将 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;
}

最佳答案

程序的参数由空格分隔。因此,如果您想实际输入一个,则必须使用 "",(至少在 Windows 中)

控制台示例;

这只是一个参数:

my.exe "a b c" 

三个参数:

my.exe a b c

关于c - 如何将 argv[][] 与空格字符进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22797843/

相关文章:

c - 有没有办法知道打开用于写入的文件描述符是否有人在读取端监听?

android - 如何从 .cpp 脚本启动 Android Activity ?

php - 如何在 foreach 循环中使用 phpQuery 从表中获取数据

c - 在 C 中使用 FILE 变量的地址和 FILE * 有什么区别?

c - 如何在 C 中的函数调用之间保留 union 成员的值?

javascript - 使用 ng-click 为每次点击添加 HTML 代码

php - 如何在 PHP 中更改数组结构

r - 比较过去和现在相同产品的值(value)

c# - 无法比较字符串 > 字符串

c - 比较三个值的函数