c的最基本上函数实现
来源:互联网 发布:网络负面消息处理方案 编辑:程序博客网 时间:2024/05/17 22:00
/***************strlen.cpp************/int Strlen(const char *s){ int iLen = 0; while (*s!= '\0') { s++; iLen++; } return iLen;}/***************strcpy.cpp************///拷贝函数char *Strcpy(char *dest, const char *src){ char * temp = dest; while (*src != '\0') { *dest = *src; src++; dest++; } return temp;}char *Strncpy(char *dest, const char *src, int n){ char * temp = dest; while ((*src != '\0')&& (n >0)) { *dest = *src; src++; dest++; n--; } return temp;}/***************strcat.cpp************/void strcat(char *s, char *t){ while (*s != '/0') { s++; } while((*s++ = *t++) != '/0') ;}/***************strcmp.cpp************/int Strcmp(const char *s1, const char *s2){ while ((*s1 == *s2)&& (*s1 !='\0')) { s1++; s2++; } return *s1 -*s2;}/***************strncmp.cpp************/int Strncmp(const char *s1, const char *s2, int n){ if (n == 0) { return 0; } while ((*s1 == *s2)&& (*s1 !='\0') && ( n-1 > 0 )) { s1++; s2++; n--; } return *s1 -*s2;}/***************strend.cpp************/int strend(char *s, char *t){ char *pTBegin = t; while (*s != '/0') { s++; } while (*t != '/0') { t++; } while (*s==*t) { if (t==pTBegin) { return 1; } s--; t--; } return 0;}/***************LTrim.cpp************/char *LTrim(char *str){ char *p = str; if (str==NULL) { return ; } while(*p!='/0') { if ((*p!=' ')&&(*p!='/t')) { break; } p++; } if (p == str) { return p; } strcpy(str,p); return str;}/***************RTrim.cpp************/char *RTrim(char *str){ int i = strlen(str)- 1; while((i>=0)&&(str[i]==' '||str[i]=='/t')) { str[i] = '/0'; i--; } return str;}char *RTrim(char *str){ int i = strlen(str)- 1; while((i>=0)&&(str[i]==' '||str[i]=='/t')) { str[i] = '/0'; i--; } return str;}/***************Trim.cpp************/char *Trim( char *str ){ char *pStr; int i = 0; if ( str == NULL ) return NULL; pStr = str; while ( *pStr == ' ' || *pStr == '/t' ) pStr ++; strcpy( str, pStr ); i = strlen( str ) - 1; while( (i>=0)&&(str[i] == ' ' || str[i] == '/t') ) { str[i] = '/0'; i -- ; } return str;}int main(){ int i = 1; char *p ="abcdefg"; char *p2="abcdefh"; char *p3="abcdefg"; char temp[10] = {0}; char temp2[10] = {0}; printf("strlen(p)= %d, Strlen(p)= %d\n", strlen(p),Strlen(p)); printf("Strcmp(p,p2)= %d\n", Strcmp(p,p2)); printf("Strcmp(p2,p3)= %d\n", Strcmp(p2,p3)); printf("Strncmp(p2,p3,6)= %d\n", Strncmp(p2,p3,6)); printf("Strncmp(p2,p3,7)= %d\n", Strncmp(p2,p3,7)); printf("Strncmp(p2,p3,3)= %d\n", Strncmp(p2,p3,3)); printf("Strcpy(temp, p2)= %s\n", Strcpy(temp,p2)); printf("Strncpy(temp2, p2)= %s\n", Strncpy(temp2,p2,5));}