Trong bài viết này, chúng ta sẽ thảo luận về hàm iswupper() trong C++, cú pháp, cách hoạt động và giá trị trả về.
iswupper() là hàm built-in trong C++ được định nghĩa trong header <cwctype>. Hàm kiểm tra xem ký tự rộng truyền vào có phải là chữ in hoa (A-Z) hay không. Đây là phiên bản wide character của isupper(). Nếu là chữ in hoa trả về khác 0 (true), ngược lại trả về 0 (false).
Cú pháp
int iswupper(wint_t ch);
Hàm chỉ nhận một tham số: ký tự rộng cần kiểm tra. Tham số được ép kiểu sang wint_t hoặc WEOF.
Giá trị trả về
Hàm trả về giá trị nguyên: 0 (false) hoặc khác 0 (true).
Ví dụ 1
#include <iostream>
#include <cwctype>
using namespace std;
int main() {
wint_t a = L'A';
wint_t b = L'a';
wint_t c = L'B';
iswupper(a) ? cout << "\nLà ký tự in hoa" : cout << "\nKhông phải ký tự in hoa";
iswupper(b) ? cout << "\nLà ký tự in hoa" : cout << "\nKhông phải ký tự in hoa";
iswupper(c) ? cout << "\nLà ký tự in hoa" : cout << "\nKhông phải ký tự in hoa";
return 0;
}
Kết quả
Là ký tự in hoa Không phải ký tự in hoa Là ký tự in hoa
Ví dụ 2: Đếm chữ in hoa trong chuỗi rộng
#include <iostream>
#include <cwctype>
using namespace std;
int main() {
int i = 0, count = 0;
wchar_t s[] = L"I aM VisItinG TutOriAls PoInT";
while (s[i]) {
if (iswupper(s[i]))
count++;
i++;
}
cout << "Có " << count << " ký tự in hoa.\n";
return 0;
}
Kết quả
Có 11 ký tự in hoa.