/** substring.C -- 截取字符串 */ #include "stdio.h" #include "conio.h" /*从左边开始截取字符串 */ char *left(char *dst,char *src,int n,int m) { char *p=src; char *q=dst; int len=strlen(src); if(n>len) n=len; while(n--) *(q++)=*(p++); *(q++)='/0'; return dst; } /* 从右边开始截取*/ char *right(char *dst,char *src,int n,int m) { char *p=src; char *q=dst; int len=strlen(src); if(n>len) n=len; p+=(len-n); while(*(q++)=*(p++)); return dst; } /*从中部截取字符串 */ char *mid(char *dst,char *src,int n,int m) { char *p=src; char *q=dst; int len=strlen(src); if(n>len) n=len-m; if(m>0) return NULL; p += m; while(n--) *(q++) = *(p++); *(q++)='/0'; return dst; } char *substring(char *dst,char *src,int len,int start) { char *p=dst; char *q=src; int length=strlen(src); if(start>=length||start<0) return NULL; if(len>length) len=length-start; q+=start; while(len--) { *(p++)=*(q++); } *(p++)='/0'; return dst; } main() { char *src="411524198510088017"; char *year,*month,*day; int i; /* 截取年 left(year,src,4,0); for(i=0;i<strlen(year);i++) { printf("%c",*(year+i)); } printf("Hello, world/n"); */ substring(year,src,4,6); for(i=0;i<strlen(year);i++) { printf("%c",*(year+i)); } getch(); }