Tutorialspoint.dev

isprint() in C++

In C++, isprint() 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 argument contains any printable characters. There are many types of printable characters in C++ such as:

  • digits ( 0123456789 )
  • uppercase letters ( ABCDEFGHIJKLMNOPQRSTUVWXYZ )
  • lowercase letters ( abcdefghijklmnopqrstuvwxyz )
  • punctuation characters ( !”#$%&'()*+,-./:;[email protected][]^_`{ | }~ )
  • space ( )

Syntax:

int isprint ( int c ); 
c : character to be checked.
Returns a non-zero value(true) if c is a printable 
character else, zero (false).

Given a string in C++, we need to calculate the number of printable characters in the string.
Algorithm

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

Examples:

Input : string = 'My name 
 is 
 Ayush'
Output : 18

Input :string = 'I live in 
 Dehradun'
Output : 19



// CPP program to count printable characters in a string
#include <iostream>
#include <cstring>
#include <cctype>
using namespace std;
   
// function to calculate printable characters
void space(string& str)
{
    int count = 0;
    int length = str.length();
    for (int i = 0; i < length; i++) {
        int c = str[i];
        if (isprint(c))
            count++;
    }
    cout << count;
}
   
// Driver Code
int main()
{
    string str = "My name is Ayush";
    space(str);
    return 0;

Output:

18

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



This article is attributed to GeeksforGeeks.org

leave a comment

code

0 Comments

load comments

Subscribe to Our Newsletter