Computer >> 컴퓨터 >  >> 프로그래밍 >> C++

C++ isprint() 함수 – 문자 출력 가능 여부 확인하는 방법


C++의 isprint() 함수는 <cctype> 헤더 파일에 미리 정의되어 있는 함수로, 전달된 문자가 화면에 출력할 수 있는(printable) 문자인지 검사합니다. 문자가 출력 가능하면 0이 아닌(non-zero) 값을 반환하고, 그렇지 않으면 0을 반환합니다.

isprint() 함수의 기본 문법은 다음과 같습니다.

int isprint(int character);

매개변수

  • character − 출력 가능 여부를 검사할 문자입니다.

예제

다음은 C++에서 isprint() 함수를 활용하는 예제입니다.

#include<iostream>
#include<cctype>
using namespace std;
int main() {
    int val1 = 28;
    int val2 = 's';
    int val3 = '\n';
    if(isprint(val1))
    cout << "출력 가능한 값입니다" << endl;
    else
    cout << "출력할 수 없는 값입니다" << endl;
    if(isprint(val2))
    cout << "출력 가능한 값입니다" << endl;
    else
    cout << "출력할 수 없는 값입니다" << endl;
    if(isprint(val3))
    cout << "출력 가능한 값입니다" << endl;
    else
    cout << "출력할 수 없는 값입니다" << endl;
    return 0;
}

실행 결과

출력할 수 없는 값입니다
출력 가능한 값입니다
출력할 수 없는 값입니다

위 프로그램에서는 세 개의 변수 val1, val2, val3를 선언한 뒤, 각 변수가 출력 가능한 문자인지 isprint() 함수로 검사합니다.

val1에는 정수 28이 저장되어 있습니다. 아스키(ASCII) 코드 28번은 파일 구분자(File Separator)에 해당하는 제어 문자로 화면에 표시할 수 없기 때문에 isprint() 함수는 거짓을 반환합니다. 반면 val2에는 문자 's'가 저장되어 있어 출력 가능한 문자로 판별되어 참을 반환하고, val3에는 줄 바꿈 문자 '\n'이 저장되어 있어 출력 불가능한 문자로 판별됩니다.

이처럼 isprint() 함수는 입력값 유효성 검사나 문자열 필터링 등에서 특정 문자가 실제로 화면에 나타날 수 있는 문자인지 확인해야 할 때 유용하게 사용됩니다.