Remove Trailing Zeros From string in C++

Given a string of digits, remove trailing zeros from it.


Input : 00000123569
Output : 123569

Input : 000012356090
Output : 12356090

1) Count trailing zeros.
2) Use string erase function to remove characters equal to above count.

Below is C++ implementation.

// C++ program to remove trailing/preceding zeros
// from a given string
using namespace std;

string removeZero(string str)
    // Count trailing zeros
    int i = 0;
    while (str[i] == '0')

    // The erase function removes i characters
    // from given index (0 here)
    str.erase(0, i);

    return str;

// Driver code
int main()
    string str;
    str = "00000123569";
    str = removeZero(str);
    cout << str << endl;
    return 0;

Output :


This article is contributed by Prakhar Agrawal. If you like GeeksforGeeks and would like to contribute, you can also write an article using or mail your article to See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

Please write to us at to report any issue with the above content.

Recommended Posts:

3 Average Difficulty : 3/5.0
Based on 1 vote(s)