isspace() in C/C++ and its application to count whitespace characters

isspace() function
In C++, isspace is a predefined function used for string and character handling.cstring is the header file required for string functions and cctype is the headerfile required for character functions.

This function is used to check if the arguement contains any whitespace characters.
There are many types of whitespace characters in c++ such as-

  • ‘ ‘ – Space
  • ‘\t’ – Horizontal tab
  • ‘\n’ – Newline
  • ‘\v’ – Vertical tab
  • ‘\f’ – Feed
  • ‘\r’ – Carriage return
Syntax :
int isspace(int x)
x : x is character to be checked

Application
Given a string, we need to count the number of whitespace characters in the string using isspace() function.

Examples:

Input : string = 'Geeks for geeks'
Output : 2

Input :string = 'My name is Ayush'
Output : 3
filter_none

edit
close

play_arrow

link
brightness_4
code

// C program to illustrate
// isspace() function
#include <ctype.h>
#include <stdio.h>
int main()
{
    // taking input
    char ch = ' ';
  
    // checking is it space?
    if (isspace(ch))
        printf("\nEntered character is space");
    else
        printf("\nEntered character is not space");
}

chevron_right


Output :

Entered character is space

Application: isspace() function is used to find number of spaces in a given sentence.
Examples:

Input : This is a good website
Output : Number of spaces in the sentence is : 4

Input : heyy this is geeksforgeeks
Output : Number of spaces in the sentence is : 3

Input : hello how can I help you
Output : Number of spaces in the sentence is : 5

Algorithm
1. Traverse the given string character by character upto its length, check if character is a whitespace character.
2. If it is a whitespace character, increment the counter by 1, else traverse to the next character.
3. Print the value of the counter.

filter_none

edit
close

play_arrow

link
brightness_4
code

// C program to illustrate
// isspace() function
#include <ctype.h>
#include <stdio.h>
  
// Function for counting spaces
int cnt_space(int i, int count, char ch)
{
  
    // input sentence
    char buf[50] = "Geeks for Geeks";
    ch = buf[0];
  
    // counting spaces
    while (ch != '\0') {
        ch = buf[i];
        if (isspace(ch))
            count++;
  
        i++;
    }
  
    // returning number of spaces
    return (count);
}
int main()
{
  
    char ch;
    int i = 0, count = 0;
  
    // Calling function
    count = cnt_space(i, count, ch);
  
    // printing number of spaces
    printf("\nNumber of spaces in the sentence is : %d", count);
  
    return 0;
}

chevron_right


Output:

Number of spaces in the sentence is : 2
filter_none

edit
close

play_arrow

link
brightness_4
code

// CPP program to count white spaces in a string
#include <iostream>
#include <cstring>
#include <cctype>
using namespace std;
  
// function to calculate whitespaces
void space(string& str)
{
    int count = 0;
    int length = str.length();
    for (int i = 0; i < length; i++) {
        int c = str[i];
        if (isspace(c))
            count++;
    }
    cout << count;
}
  
// Driver Code
int main()
{
    string str = "Geeks for geeks";
    space(str);
    return 0;
}

chevron_right


Output:

2

This article is contributed by Ayush Saxena and Kanchan Ray. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. 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.



My Personal Notes arrow_drop_up


Article Tags :
Practice Tags :


1


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.