How can I remove the leading spaces from a string? Ans. The C language does not provide a standard function that removes leading spaces from a string. It is easy, however, to build your own function to do just this. you can easily construct a custom function that uses the rtrim() function in conjunction with the standard C library function strrev() to remove the leading spaces from a string. Look at how this task is performed: #include #include void main(void); char* ltrim(char*); char* rtrim(char*); void main(void) { char* lead_str = ' This string has leading spaces in it.'; /* Show the status of the string before calling the ltrim() function. */ printf('Before calling ltrim(), lead_str is '%s'\n', lead_str); printf('and has a length of %d.\n', strlen(lead_str)); /* Call the ltrim() function to remove the leading blanks. */ ltrim(lead_str); /* Show the status of the string after calling the ltrim() function. */ printf('After calling ltrim(), lead_str is '%s'\n', lead_str); printf('and has a length of %d.\n', strlen(lead_str)); } /* The ltrim() function removes leading spaces from a string. */ char* ltrim(char* str) { strrev(str); /* Call strrev() to reverse the string. */ rtrim(str); /* Call rtrim() to remove the 'trailing' spaces. */ strrev(str); /* Restore the string's original order. */ return str; /* Return a pointer to the string. */ } /* The rtrim() function removes trailing spaces from a string. */ char* rtrim(char* str) { int n = strlen(str) - 1; /* Start at the character BEFORE the null character (\0). */ while (n>0) /* Make sure we don't go out of bounds... */ { if (*(str n) != ' ') /* If we find a nonspace character: */ { *(str n 1) = '\0'; /* Put the null character at one character past our current position. */ break; /* Break out of the loop. */ } else /* Otherwise, keep moving backward in the string. */ n--; } return str; /* Return a pointer to the string. */ } Notice that the ltrim() function performs the following tasks: First, it calls the standard C library function strrev(), which reverses the string that is passed to it. This action puts the original string in reverse order, thereby creating 'trailing spaces' rather than leading spaces. Now, the rtrim() function is used to remove the 'trailing spaces' from the string. After this task is done, the strrev() function is called again to 'reverse' the string, thereby putting it back in its original order. - Study24x7
Social learning Network
28 Mar 2023 11:13 AM study24x7 study24x7

How can I remove the leading spaces from a string? Ans. The C language does not provide a standard function that removes leading spaces from a string. It is easy, however, to build your own function to do just this. you can easily construct a custom function that uses the rtrim(...

See more

study24x7
Write a comment
Related Questions
500+   more Questions to answer
Most Related Articles