Linux下C語言之操做字符串函數介紹及實例之一

本文將介紹幾個操做字符串的函數和幾個簡單的實例說明,這些例子都是在RHEL5.4下運行的。。。
1。 數字或字母測試函數   isalnum
函數isalnum的做用是檢查參數c是否爲英文字母或阿拉伯數字。若參數C是個字母或數字,則返回真值,不然返回值爲假。這個函數包含於頭文件「ctype.h」中,使用方法以下所示:
    int isalnum (int c)
    參數C是一個字符變量,可是在C程序中,字符變量等同於這個變量的ASCII碼的值,因此參數也能夠是一個ASCII碼值的整型數值。下面是這個函數的使用實例,測試一個字符數組中全部的字符,若是是字母或數字則輸出結果。
[root@localhost c-test]# vi isalnum.c
#include <stdio.h>
#include <ctype.h>      /*頭文件  ctype.h*/
main()
{
        char s[]="12as056;~^*&";     /*定義一個字符串數組*/
        int i;                     /*定義一個整型變量做爲循環的計數器*/
        for(i=0;s[i]!=NULL;i++)        /*判斷S[I]是否爲空做爲循環條件*/
        {       if (isalnum(s[i]))     /*判斷當前字符是不是字符或數字*/
                {
                    printf("%c is a number or character. \n",s[i]);   
                     /*輸出結果*/
                }
        }
}
[root@localhost c-test]# gcc isalnum.c -o isalnum
[root@localhost c-test]# ./isalnum
1 is a number or character.
2 is a number or character.
a is a number or character.
s is a number or character.
0 is a number or character.
5 is a number or character.
6 is a number or character.
[root@localhost c-test]#

     2.字母測試函數  isalpha
函數 isalpha能夠測試一個字符是不是個英文字母,這個函數的使用方法以下:
  int isalpha (int c)
   函數的參數C表示一個字母或表示一個字母的ASCII的碼值,若是這個參數是一個英文字母,則返回真值,不然返回值爲假。這裏的英文字母是指26個大小寫的字母,不包括其餘的任何字符。下面的程序時對字符數組裏的每一個字符進行測試
[root@localhost c-test]# vi isalpha.c
#include <stdio.h>
#include <ctype.h>
main()
{
        char s[]="12aAHDr056^$*";
        int i;
        for (i=0;s[i]!=NULL;i++)
        {
                if (isalpha(s[i]))
                {
                   printf("%c is a character. \n",s[i]);
                }
        }
}
[root@localhost c-test]# gcc isalpha.c -o isalpha
[root@localhost c-test]# ./isalpha
a is a character.
A is a character.
H is a character.
D is a character.
r is a character.
[root@localhost c-test]#
 
3.大小寫字母測試函數 islower和isupper
函數islower用於測試一個字符是不是小寫字符,若是這個參數是是小寫字母,函數就返回真值,函數isupper的用法和islower類似。下面是個判斷字符大小寫的例子,判斷一個數組中有哪些大寫字母和小寫字母。
[root@localhost c-test]# vi isLower_isUpper.c
#include <stdio.h>
#include <ctype.h>
main()
{
        char s[]="12asdAHDr056^$*";
        int i;
        for (i=0;s[i]!=NULL;i++)
        {
                if (islower(s[i]))
                {
                   printf("%c is a islower  character. \n",s[i]);
                }
                if (isupper(s[i]))
                {
                   printf("%c is a isupper  character. \n",s[i]);
                }
        }
}
[root@localhost c-test]# gcc  isLower_isUpper.c -o isLower_isUpper
[root@localhost c-test]# ./isLower_isUpper
a is a islower  character.
s is a islower  character.
d is a islower  character.
A is a isupper  character.
H is a isupper  character.
D is a isupper  character.
r is a islower  character.
[root@localhost c-test]#
 
4.數字測試函數isdigit
函數isdigit能夠測試一個字母是不是0-9之間的阿拉伯數字,這個函數的使用方法以下:
int isdigit(int )
這個函數的參數C表示一個字符,或者ASCII碼錶中的一個編號,函數對這個字符進行判斷,若是是一個數字則返回真值,不然返回值爲假。下面是一個函數使用實例,判斷一個數組中的字符,若是是數字則輸出,代碼以下:
[root@localhost c-test]# vi isdigit.c
#include <stdio.h>
#include <ctype.h>
main()
{
        char s[]="12asdAHDr056^$*";
        int i;
        for (i=0;s[i]!=NULL;i++)
        {
                if (isxdigit(s[i]))
                {
                   printf("%c is a number. \n",s[i]);
                }
               
        }
}

[root@localhost c-test]# gcc isdigit.c -o isxdigit
[root@localhost c-test]# ./isxdigit
1 is a number.
2 is a number.
0 is a number.
5 is a number.
6 is a number.
[root@localhost c-test]#
 
本篇就介紹到這裏,未完待續。。。
相關文章
相關標籤/搜索