函式
<cwctype>

iswpunct

int iswpunct (wint_t c);
檢查寬字元是否為標點字元
檢查 c 是否為標點字元

標點字元是被特定區域設定視作標點符號的字元。這些字元具有圖形表示(如 iswgraph 中所述),並且必須不是字母數字字元(如 iswalnum 中所述)。

此函式是 ispunct (<cctype>) 的寬字元版本:如果 c 透過 wctob 轉換成的字元對於 ispunct 為真,則該字元總是被此函式視為標點字元(但某些區域設定特定的可列印空白字元可能除外,例如L' ').

之外的字元)。在 C++ 中,此函式的一個特定於區域設定的模板版本 (ispunct) 存在於標頭檔案 <locale> 中,適用於所有字元型別。

引數

c
要檢查的寬字元,強制轉換為wint_t型別,或WEOF.
wint_t 是一個整數型別。

返回值

如果 c 確實是空白字元,則返回一個非零值(即)如果 c 確實是標點字元。否則返回零(即,)。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
/* iswpunct example */
#include <stdio.h>
#include <wctype.h>
int main ()
{
  int i=0;
  int cx=0;
  wchar_t str[] = L"Hello, welcome!";
  while (str[i])
  {
    if (iswpunct(str[i])) cx++;
    i++;
  }
  wprintf (L"The sentence contains %d punctuation characters.\n", cx);
  return 0;
}

輸出
The sentence contains 2 puntuation characters.


另見