103. Implement a Simple Shell Command Parser

Back To All Submissions
Previous Submission
Next Submission

Code

#include <stdio.h>
#include <ctype.h>
#include <cstdint>
void parse_shell_input(char *str) {
    // Your logic here
    int i =0,k=0,j=0,count =0;
    char chuoi[50][50];
    
    for(int a =0; a < 101 ; a++){
        while(str[i] == ' ') i++;
        while(str[i] !='\0' && str[i] !=' '){
            chuoi[k][j] = str[i];
            j++;
            i++;
        }
        chuoi[k][j] = '\0';
        if(str[i] == ' '){
            k++;
            j=0;
            i++;
        }
        if(str[i] == '\0'){
            count = k + 1;
            break;
        }
    }
    for (uint8_t m = 0; m < count; m++) {
        printf("%s\n", chuoi[m]);
    }
}

int main() {
    char line[101];
    fgets(line, sizeof(line), stdin);

    parse_shell_input(line);
    return 0;
}

Solving Approach

 

 

 

Was this helpful?
Upvote
Downvote