作者:iamlaosong
C語言字符串截取須要自己編程實現,只是。網絡時代,自然不用自己從頭寫了。網上各種方法的實現代碼已經多如牛毛了,這兒抄錄一個感覺不錯的備案。
#include <stdio.h>
#include <string.h>
/*從字符串的左邊截取n個字符*/
char * left(char *dst,char *src, int n)
{
char *p = src;
char *q = dst;
int len = strlen(src);
if(n>len) n = len;
while(n--) *(q++) = *(p++);
*(q++)='\0'; /*有必要嗎?非常有必要*/
return dst;
}
/*從字符串的中間截取n個字符*/
char * mid(char *dst,char *src, int n,int m) /*n為長度,m為位置*/
{
char *p = src;
char *q = dst;
int len = strlen(src);
if(n>len) n = len-m; /*從第m個到最后*/
if(m<0) m=0; /*從第一個開始*/
if(m>len) return NULL;
p += m;
while(n--) *(q++) = *(p++);
*(q++)='\0'; /*有必要嗎?非常有必要*/
return dst;
}
/*從字符串的右邊截取n個字符*/
char * right(char *dst,char *src, int n)
{
char *p = src;
char *q = dst;
int len = strlen(src);
if(n>len) n = len;
p += (len-n); /*從右邊第n個字符開始。到0結束,非常巧啊*/
while(*(q++) = *(p++));
return dst;
}
