1 判斷是否是二十六得字母中其中之一
isalpha();

1 #include <stdio.h> 2 #include <ctype.h> 3 #include <iostream> 4 using namespace std; 5 //是否是二十六個字母 6 int main() 7 { 8 int i = 0; 9 char str[] = "C++"; 10 while (str[i]) 11 { 12 if (isalpha(str[i])) printf("character %c is alphabetic\n", str[i]); 13 else printf("character %c is not alphabetic\n", str[i]); 14 i++; 15 } 16 std::cin.get(); 17 return 0; 18 }
2 空白字符是用於在文本行內分隔單詞的空格字符。
isblank(int c)

1 #include <stdio.h> 2 #include <ctype.h> 3 #include <iostream> 4 using namespace std; 5 //空白字符是用於在文本行內分隔單詞的空格字符。 6 int main() 7 { 8 char c; 9 int i = 0; 10 char str[] = "what are you from\n"; 11 while (str[i]) 12 { 13 c = str[i]; 14 if (isblank(c)) c = '\n'; 15 putchar(c); 16 i++; 17 } 18 cin.get(); 19 return 0; 20 21 }
3 檢查這個字符是否是控制字符
int iscntrl(int c)
(1) 一個控制字符是一個在顯示上不占用打印位置的字符(這是一個可打印字符的反面,用isprint檢查)
(2)在標准c中ASCII的0x00-0x1f+0x7f

1 #include <stdio.h> 2 #include <ctype.h> 3 #include <iostream> 4 using namespace std; 5 6 //遇到一個終止字符就停止輸出 7 int main() 8 { 9 int i = 0; 10 char str[] = "first apple \n second apple \n"; 11 while (!iscntrl(str[i])) 12 { 13 putchar(str[i]); 14 i++; 15 } 16 cin.get(); 17 return 0; 18 }
4 檢查這個字符是否是十進制數字字符
int isdigit(int c)
0-9

1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <ctype.h> 4 #include <iostream> 5 using namespace std; 6 int main() 7 { 8 char str[] = "177667d"; 9 //int year = atoi(str); 10 int year; 11 if (isdigit(str[0])) 12 { 13 year = atoi(str);//只是會把數字部分留下 14 printf("The year that followed %d was %d.\n", year, year + 1); 15 } 16 cin.get(); 17 return 0; 18 }
5 檢查字符是否是小寫
int islower ( int c );
int toupper()轉換為大寫

1 #include <stdio.h> 2 #include <ctype.h> 3 int main () 4 { 5 int i=0; 6 char str[]="Test String.\n"; 7 char c; 8 while (str[i]) 9 { 10 c=str[i]; 11 if (islower(c)) c=toupper(c); 12 putchar (c); 13 i++; 14 } 15 return 0; 16 }
6 檢查字符是否可以打印(屏幕顯示)

1 #include <stdio.h> 2 #include <ctype.h> 3 #include <iostream> 4 using namespace std; 5 int main() 6 { 7 int i = 0; 8 char str[] = "first line \n second line \n"; 9 while (isprint(str[i])) 10 { 11 putchar(str[i]); 12 i++; 13 } 14 cin.get(); 15 return 0; 16 }
7 檢查字符包含多少個標點符號

1 #include <stdio.h> 2 #include <ctype.h> 3 #include <iostream> 4 using namespace std; 5 int main() 6 { 7 int i = 0; 8 int cx = 0; 9 char str[] = "Hello, welcome!"; 10 while (str[i]) 11 { 12 if (ispunct(str[i])) cx++; 13 i++; 14 } 15 printf("Sentence contains %d punctuation characters.\n", cx); 16 cin.get(); 17 return 0; 18 }