GeeksforGeeks App
Open App
Browser
Continue

# Removing spaces from a string using Stringstream

Solution to removing spaces from a string is already posted here. In this article another solution using stringstream is discussed.

Algorithm:

```1. Enter the whole string into stringstream.
2. Empty the string.
3. Extract word by word and concatenate to the string.```

Program 1: Using EOF

## CPP

 `// C++ program to remove spaces using stringstream``#include ``using` `namespace` `std;` `// Function to remove spaces``string removeSpaces(string str)``{``    ``stringstream ss;``    ``string temp;` `    ``// Storing the whole string``    ``// into string stream``    ``ss << str;` `    ``// Making the string empty``    ``str = ``""``;` `    ``// Running loop till end of stream``    ``while` `(!ss.eof()) {` `        ``// Extracting word by word from stream``        ``ss >> temp;` `        ``// Concatenating in the string to be``        ``// returned``        ``str = str + temp;``    ``}``    ``return` `str;``}` `// Driver function``int` `main()``{``    ``// Sample Inputs``    ``string s = ``"This is a test"``;``    ``cout << removeSpaces(s) << endl;` `    ``s = ``"geeks for geeks"``;``    ``cout << removeSpaces(s) << endl;` `    ``s = ``"geeks quiz is awesome!"``;``    ``cout << removeSpaces(s) << endl;` `    ``s = ``"I love     to     code"``;``    ``cout << removeSpaces(s) << endl;` `    ``return` `0;``}`

Output

```Thisisatest
geeksforgeeks
geeksquizisawesome!
Ilovetocode```

Time complexity: O(n) where n is length of string
Auxiliary space: O(n)

Program 2: Using getline()

## CPP

 `// C++ program to remove spaces using stringstream``// and getline()``#include ``using` `namespace` `std;` `// Function to remove spaces``string removeSpaces(string str)``{``    ``// Storing the whole string``    ``// into string stream``    ``stringstream ss(str);``    ``string temp;` `    ``// Making the string empty``    ``str = ``""``;` `    ``// Running loop till end of stream``    ``// and getting every word``    ``while` `(getline(ss, temp, ``' '``)) {``        ``// Concatenating in the string``        ``// to be returned``        ``str = str + temp;``    ``}``    ``return` `str;``}``// Driver function``int` `main()``{``    ``// Sample Inputs``    ``string s = ``"This is a test"``;``    ``cout << removeSpaces(s) << endl;` `    ``s = ``"geeks for geeks"``;``    ``cout << removeSpaces(s) << endl;` `    ``s = ``"geeks quiz is awesome!"``;``    ``cout << removeSpaces(s) << endl;` `    ``s = ``"I   love     to     code"``;``    ``cout << removeSpaces(s) << endl;` `    ``return` `0;``}` `// Code contributed by saychakr13`

Output

```Thisisatest
geeksforgeeks
geeksquizisawesome!
Ilovetocode```

Time complexity: O(n)
Auxiliary Space: O(n)

This article is contributed by Nishant. If you like GeeksforGeeks and would like to contribute, you can also write an article using write.geeksforgeeks.org or mail your article to review-team@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

My Personal Notes arrow_drop_up