這篇記錄我常用的c語言字元處理函式,有用到新的就更新補充
原型 :char *strchr(const char *s,char c);
解釋:查詢字串s中首次出現c的位置的指標,不存在則返回null
標頭檔案:#include
例子:
char *url = "www.baidu.com/index.html";
char *ptr = strchr(url,'/'); //ptr 指向 /
原始碼實現:
char
*my_strchr
(const
char
*s,char c)
return
null
;}
原型 :char *strstr(const char *s1, const char *s2);
解釋:用於判斷s2 是否是s1的子串,是則返回s2首次出現在s1的位置的指標,不是則null
標頭檔案:#include
例子:
char *buff = " 200 ok http\r\n\r\nabcderf";
char *ptr = strstr(buff,"\r\n\r\n"); // ptr 是指向\r的指標
原始碼實現
char
*my_strstr
(const
char
*src,
const
char
* to_find)
while
(*src_bak++
==*to_find_bak++);
src++
;//next char
}return
null
;}
原型 :int atoi(const char *nptr) ;
解釋:函式會掃瞄引數 nptr字串,會跳過前面的空白字元(例如空格,tab縮排)等。如果 nptr不能轉換成 int 或者 nptr為空字串,那麼將返回 0 。特別注意,該函式要求被轉換的字串是按十進位制數理解。
標頭檔案:#include
例子:
char *nptr = " 200 ok http";
int status = atoi(nptr); // status = 200
原型 :char *strcat(char *dst, const char *src);
例子:
char *sendbuf =zalloc(100);
strcat(sendbuf,"cache-control: no-cache\r\n");
strcat(sendbuf,"content-type: text/html\r\n");
原始碼實現:
char
*my_strcat
(char
* dst,
const
char
* src)
原型 :int strcmp(const char *s1, const char *s2); int strncmp(const char *s1, const char *s2, size_t n);
解釋:兩個字串自左向右逐個字元相比(按ascii值大小相比較),直到出現不同的字元或s1遇』\0』為止,
strncmp 就是比較前n個
標頭檔案:#include
例子:
char *udp_msg = zalloc(strlen("next"));
memcpy(udp_msg,"next",strlen("next"));
if( strcmp(udp_msg,"next") == 0)
return true;
else
return false;
原始碼實現:
原型 :char * strcpy(char * dest,const char *src);
解釋:只能用於複製字串,遇到'\0'
結束,並且會複製'\0'
標頭檔案:#include
原始碼實現:
char
*my_strcpy
(char
* dest,
const
char
*src)
*dest_bak++
=*src++
;// '\0' 複製
return dest;
}int
main()
結果
dest:abcdef p:abcdef
原型 :void *memcpy(void *dest, const void *src, size_t size);
解釋:提供了一般記憶體的複製,memcpy對於需要複製的內容沒有限制,通過size控制複製個數。
標頭檔案:#include
原始碼實現:
void
*my_memcpy
(void
* dest,
const
void
*src,
int size)
return dest;
}int
main()
結果
dest:abcdef
c語言字元處處理函式
strcat 字串連線函式 strcat str1,str2 結果str1 str1 str2 strcpy 字串拷貝 strcpy str1,str2 接果str1 str2 strcnp 字串拷貝 strcnp str1,str2,n 結果str1 str2 str n 1 strlen str...
C語言ctype h 字元處理函式
c語言標頭檔案ctype.h包含了一些專門處理字元的函式,這些函式將乙個字元作為引數,判斷該字元是否屬於某個類別,如果屬於,則返回真,否則返回假。這些函式如下表 函式判斷類別 isalnum 字母或數字 isalpha 字母 isblank 空白字元 如空格 製表符和換行符 iscntrl 控制字元...
C語言常用字串處理函式
1 函式名 stpcpy 功 能 拷貝乙個字串到另乙個 用 法 char stpcpy char destin,char source 2 函式名 strcat 功 能 字串拼接函式 用 法 char strcat char destin,char source 3 函式名 strchr 功 能 在...