在C中计算空格-argc / argv

问题描述 投票:0回答:1

我想计算空格,例如' '(ASCII SP或32)。我必须使用命令行传递参数。因此,例如,我输入Hello World并希望接收一定数量的空格,在这种情况下,结果应为2。

我已经尝试过以下操作:文字= Hello World

#include <stdio.h>
#include <string.h>

int main(int argc, char* argv[]){
    int spaces = 0;
    char* mystring = argv[1];
    int size = strlen(argv[1]) + strlen(argv[2]);
     for(int i = 0; i < size; i++){
         if((*(mystring + i)) == ' '){
             spaces++;
             printf("%d\n", spaces);
         }
     }
}

我知道*(argv + 1)Hello(或ASCII码),并且*(argv + 2) = World,这就是我确实遇到的问题。如何计算argv[n]之间的间隔?空格的数量可以不同,因此我不想编写类似If(argc > 1){ spaces++;}的代码。

有人可以帮忙吗?

最诚挚的问候,

凯塔

我想计算空格,例如''(ASCII SP或32)。我必须使用命令行传递参数。因此,例如,我输入Hello World并希望收到......>

c argv
1个回答
0
投票

以双引号将字符串传递,例如“ Hello World”。

© www.soinside.com 2019 - 2024. All rights reserved.