C语言isspace()函数:判断字符是否为空白字符
头文件:
1
|
#include <ctype.h> |
定义函数:
1
|
int isspace ( int c); |
函数说明:检查参数c是否为空格字符,也就是判断是否为空格(' ')、定位字符(' \t ')、CR(' \r ')、换行(' \n ')、垂直定位字符(' \v ')或翻页(' \f ')的情况。
返回值:若参数c 为空白字符,则返回非 0,否则返回 0。
附加说明:此为宏定义,非真正函数。
范例:将字符串str[]中内含的空格字符找出,并显示空格字符的ASCII 码。
1
2
3
4
5
6
7
8
|
#include <ctype.h> main(){ char str[] = "123c @# FD\tsP[e?\n" ; int i; for (i = 0; str[i] != 0; i++) if ( isspace (str[i])) printf ( "str[%d] is a white-space character:%d\n" , i, str[i]); } |
执行结果:
1
2
3
4
|
str[4] is a white-space character:32 str[7] is a white-space character:32 str[10] is a white-space character:9 // \t str[16] is a white-space character:10 // \t |
C语言ispunct()函数:判断字符是否为标点符号或特殊字符
头文件:
1
|
#inlude <ctype.h> |
ispunct() 函数用来检测一个字符是否为标点符号或特殊字符,其原型为:
1
|
int ispunct( int c); |
【参数】c 为需要检测的字符。
【返回值】若 c 为标点符号或特殊符号(非空格、非数字和非英文字母)返回非 0 值,否则返回 0。
注意,此为宏定义,非真正函数。
【实例】列出字符串str 中的标点符号或特殊符号。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
#include <stdio.h> #include <ctype.h> int main () { int i=0; int cx=0; char str[]= "Hello, welcome!" ; while (str[i]) { if (ispunct(str[i])) cx++; i++; } printf ( "Sentence contains %d punctuation characters.\n" , cx); return 0; } |
输出结果:
1
|
Sentence contains 2 punctuation characters. |