How to remove extra spaces from a string in C

1 Answer

0 votes
#include <stdio.h>
#include <string.h>
   
void remove_extra_spaces(char *s) {
    char *p;
     
    while ((p = strstr(s, "  "))) {
        strcpy(p, p + 1);
    }
    if (s[0] == ' ') strcpy(s, s + 1);
    if (s[strlen(s) - 1] == ' ') s[strlen(s) - 1] = '\0';
}
    
int main() {
    char s[50] = "    c python      c++     java php   ";
  
    remove_extra_spaces(s);
       
    puts(s);
}
    
   
   
    
/*
run:
     
c python c++ java php
   
*/

 



answered Apr 4, 2019 by avibootz
edited Jun 24, 2020 by avibootz

Related questions

2 answers 220 views
1 answer 129 views
1 answer 137 views
1 answer 122 views
1 answer 120 views
1 answer 114 views
...