Hàm ispunct() kiểm tra ký tự có phải ký tự dấu câu (punctuation) không. Trả về khác 0 nếu đúng, 0 nếu sai. Khai báo trong <ctype.h>.
Cú pháp
int ispunct(int c);
Ví dụ
#include <stdio.h>
#include <ctype.h>
int main() {
int a = '!';
int b = 'a';
if (ispunct(a)) printf("'%c' la dau cau\n", a);
else printf("'%c' KHONG phai dau cau\n", a);
if (ispunct(b)) printf("'%c' la dau cau\n", b);
else printf("'%c' KHONG phai dau cau\n", b);
return 0;
}
Kết quả
'!' la dau cau
'a' KHONG phai dau cau
Giải thích: '!' là dấu câu -> true. 'a' là chữ cái -> false.
Các ký tự punctuation trong locale "C"
!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
Lưu ý: Giống các hàm
ctype.h khác, nên ép (unsigned char)c để tránh UB với char signed mang giá trị âm. Phụ thuộc locale hiện tại.