ภาพรวม
iswctype() เป็นฟังก์ชันใน C++ Standard Library (header <cwctype> หรือ <wctype.h>) ใช้ตรวจสอบว่า Wide Character มีคุณสมบัติที่ระบุโดย desc หรือไม่
Syntax
int iswctype(wint_t c, wctype_t desc);
พารามิเตอร์
c- Wide character ที่ต้องการตรวจสอบ (ชนิดwint_t)desc- คุณสมบัติที่ต้องการตรวจสอบ ได้จากการเรียกwctype()เช่น"lower","upper","digit","space","alpha","alnum","print","cntrl","punct","xdigit","blank"
ค่าที่คืน
- Non-zero (true) - ถ้า c มีคุณสมบัติที่ระบุ
- 0 (false) - ถ้าไม่มี
โค้ดตัวอย่าง
#include <stdio.h>
#include <wctype.h>
int main() {
int i = 0;
wchar_t str[] = L"Test String.\n";
wchar_t c;
wctype_t check = wctype("lower");
wctrans_t trans = wctrans("toupper");
while (str[i]) {
c = str[i];
if (iswctype(c, check))
c = towctrans(c, trans);
putwchar(c);
i++;
}
return 0;
}
ผลลัพธ์
TEST STRING.
คำอธิบาย
โปรแกรมตรวจสอบแต่ละตัวอักษรว่าเป็นตัวพิมพ์เล็ก (lowercase) หรือไม่ ถ้าใช่ จะแปลงเป็นตัวพิมพ์ใหญ่ (uppercase) ด้วย towctrans() ผลลัพธ์คือข้อความทั้งหมดกลายเป็นตัวพิมพ์ใหญ่
คุณสมบัติที่รองรับทั่วไป
| ค่า desc | ความหมาย |
|---|---|
| "lower" | ตัวพิมพ์เล็ก (a-z) |
| "upper" | ตัวพิมพ์ใหญ่ (A-Z) |
| "digit" | ตัวเลข (0-9) |
| "space" | Whitespace characters |
| "alpha" | ตัวอักษร (a-z, A-Z) |
| "alnum" | ตัวอักษรและตัวเลข |
| "cntrl" | Control characters |
| "punct" | Punctuation characters |
| "xdigit" | Hexadecimal digits |
| "blank" | Space และ Tab |
| "print" | Printable characters |