- C 標準庫
- C 庫 - 首頁
- C 庫 - <assert.h>
- C 庫 - <complex.h>
- C 庫 - <ctype.h>
- C 庫 - <errno.h>
- C 庫 - <fenv.h>
- C 庫 - <float.h>
- C 庫 - <inttypes.h>
- C 庫 - <iso646.h>
- C 庫 - <limits.h>
- C 庫 - <locale.h>
- C 庫 - <math.h>
- C 庫 - <setjmp.h>
- C 庫 - <signal.h>
- C 庫 - <stdalign.h>
- C 庫 - <stdarg.h>
- C 庫 - <stdbool.h>
- C 庫 - <stddef.h>
- C 庫 - <stdio.h>
- C 庫 - <stdlib.h>
- C 庫 - <string.h>
- C 庫 - <tgmath.h>
- C 庫 - <time.h>
- C 庫 - <wctype.h>
- C 標準庫資源
- C 庫 - 快速指南
- C 庫 - 有用資源
- C 庫 - 討論
- C 程式設計資源
- C 程式設計 - 教程
- C - 有用資源
C 庫 - wctrans() 函式
C 的wctrans庫 wctrans() 函式用於獲取 wctrans_t 型別的描述符 (desc)。此描述符可與“iswctype”函式一起使用,以檢查給定的寬字元是否屬於特定的字元類別。
此函式可以儲存以下“str”值:
- toupper - 標識 towupper 使用的對映
- tolower - 標識 towlower 使用的對映
語法
以下是 wctrans() 函式的 C 庫語法:
wctrans_t wctrans( const char* str )
引數
此函式接受一個引數:
-
str - 這是一個指向型別為“const char*”的字串的指標,該字串指定要獲取其描述符的字元類別的名稱。
返回值
此函式返回一個 wctrans_t 型別的物件,該物件可與towctrans()函式一起使用以對映寬字元。
示例 1
以下是用 C 編寫的基本程式,用於演示使用 wctrans() 獲取描述符。
#include <wchar.h>
#include <wctype.h>
#include <stdio.h>
int main() {
// Wide character to check
wchar_t wc = L'A';
// Descriptor for lowercase characters
wctrans_t desc = wctrans("tolower");
wprintf(L"Original character: %lc\n", wc);
if (iswctype(wc, wctype("upper"))) {
wc = towctrans(wc, desc);
wprintf(L"Lowercase: %lc\n", wc);
} else {
wprintf(L"Not an uppercase character.\n");
}
return 0;
}
輸出
以下是輸出:
Original character: A Lowercase: a
示例 2
讓我們再建立一個示例,我們使用 wctrans() 函式獲取轉換描述符,然後使用“towctrans”將小寫字元轉換為大寫,反之亦然。
#include <wctype.h>
#include <wchar.h>
#include <stdio.h>
#include <wctype.h>
int main() {
wchar_t string[] = L"tUTORIALSPOINT.COM";
wprintf(L"Original string: %ls \n", string);
wctype_t lower= wctype("lower");
wctype_t upper = wctype("upper");
for (int i = 0; i < wcslen(string); i++) {
// if charcter is in lower transform to upper
if (iswctype(string[i], lower))
string[i] = towctrans(string[i], wctrans("toupper"));
// if charcter is in upper transform to lower
else if (iswctype(string[i], upper))
string[i] = towctrans(string[i], wctrans("tolower"));
}
wprintf(L"After transformation: %ls", string);
return 0;
}
輸出
以下是輸出:
Original string: tUTORIALSPOINT.COM After transformation: Tutorialspoint.com
示例 3
以下示例為“toupper”建立了一個描述符 (desc)。然後我們在 wctrans() 中使用此 desc 進行轉換為大寫。
#include <wchar.h>
#include <wctype.h>
#include <stdio.h>
int main() {
// Wide character string to check
wchar_t str[] = L"tutorialspoint";
// Descriptor for uppercase characters
wctrans_t desc = wctrans("toupper");
// Loop through each character in the string
for (size_t i = 0; str[i] != L'\0'; ++i) {
// Check if the character is alphanumeric
if (iswctype(str[i], wctype("lower"))) {
str[i] = towctrans(str[i], desc);
wprintf(L"%lc ", str[i]);
} else {
wprintf(L"Not converted to uppercase");
}
}
return 0;
}
輸出
以下是輸出:
T U T O R I A L S P O I N T
c_library_wctype_h.htm
廣告