Функция ispunct

Прототип функции ispunct:

int ispunct( int character );

Заголовочный файл

Название Язык
ctupe.h С
cctupe С++

Описание

Функция ispunct проверяет свой аргумент, является ли его значение символом пунктуации. Для этой функции, знак пунктуации — это любой графический символ (как в isgraph) и не буквенно-цифровые символы (как в isalnum).

Подробно ознакомиться с возвращаемыми результатами функций, для каждого символа стандартного набора символов ASСII вы можете в библиотеке <cctype>.
В С++ локализованная версия функции ispunct определена в заголовочном файле <locale>.

Параметры:

  • character
    Символ для  проверки, передаётся в функцию как значение типа int, или EOF.

Возвращаемое значение

Значение, отличное от нуля (т.е. истинно), если аргумент функции — это знак пунктуации.

Ноль (т.е. ложь), в противном случае.

Пример: исходный код программы

// пример использования функции ispunct

#include <iostream> // для оператора cout
#include <cctype>   // для функции ispunct

int main ()
{
  int ix  = 0,                                // индекс символов в строке
      ctr = 0;                                // счетчик символов пунктуации
  char str[] = "Привет, добро пожаловать!";   

  while (str[ix])                             // пока не конец чтроки
  {
    if ( ispunct(str[ix]) ) ctr++;            // если текущий символ - символ пунктуации
    ix++;                                     // инкремент интдекса
  }

  std::cout << "Предложение содержит " << ctr << " символа пунктуации" << std::endl;
  return 0;
}

Пример работы программы

CppStudio.com
Предложение содержит 2 символа пунктуации
Автор: admin
Дата: 05.09.2012
Поделиться:

Комментарии

  1. DESergik

    Пример программы выдает ошибку «expression (unsigned)(c+1) = 256″. Поискав в интернете выяснил, что проблема заключается в строчке str[] на русском языке. Чтобы исправить данную ошибку необходимо использовать строчку на английском или добавить перед char «unsigned»:

    unsigned char str8[]="Привет, добро пожаловать!";

Оставить комментарий

Вы должны войти, чтобы оставить комментарий.