1. 程式人生 > >字串處理用法-c語言

字串處理用法-c語言

介紹一下有關字串的異界常用函式

  1. strcpy(char des[], const char src[]);

    功能:對字串進行復制,有src複製到des

  2. strncpy(char destination[], const char source[], int numchars);

    功能:同上複製,能夠指定負值多少個長度,可以執行以下程式碼感受一下

#include<stdio.h>
#include<string.h>
int main()
{
	char m[20],n[20],z[20];
	scanf("%s",m);
	printf("%s\n%s\n%s\n"
,m,n,z); strcpy(n,m); printf("%s\n%s\n%s\n",m,n,z); strncpy(n+1,m,3); printf("%s\n%s\n%s",m,n,z); return 0; }
  • 注意:c中\0代表字串結尾,但是也佔一個位置.因此,如果源src沒有複製到最後的話並且des最後這個位置有字元的化,是不會覆蓋上去的.
#include<stdio.h>
#include<string.h>
int main()
{
	char m[20],n[20],z[20];
	scanf("%s",m);
	n[3]='1';
	strncpy
(n,m,3); printf("%s\n%s\n",m,n); return 0; }

當輸入123後,會發現複製完n會變成1231而不是123

  1. strcat(char target[], const char source[]);

    功能:將字串source接到字串target的後面

  2. strncat(char target[], const char source[], int numchars);

    功能:將字串source的前numchars個字元接到字串target的後面

  3. int strcmp(const char a[], const char b[]);

    功能:比較兩個字串a和b ,返回負值則a<b,正值a>b,相等則返回0

  4. strlen( const char string[] );

    功能:統計字串string長度,不包括’\0’;

  5. 常用字串與數值型別轉換

    atoi ( p ) 字串轉換到 int 整型 atof ( p ) 字串轉換到 double 符點數 atol ( p ) 字串轉換到 long 整型

  6. 字元檢查

    isalpha() 檢查是否為字母字元 isdigit() 檢查是否為數字 isupper() 檢查是否為大寫字母字元 islower() 檢查是否為小寫字母字元 ispunct() 檢查是否為標點符號 isalnum() 檢查是否為字母和數字