//strcat字符串连接 char* myStrcat(char *a, const char *b) { assert(a != NULL && b != NULL); char *c = a; while(*c) { c++; //找到a串的尾 } while(*c++ = *b++); return a; } 将b的内容连接到a尾,a的内存空间不能太小 //------------------------------------------------------------------------------------------------------------------ //strcpy字符串copy char *strcpy(char *strDest, const char *strSrc); { assert((strDest!=NULL) && (strSrc !=NULL)); char *address = strDest; while( (*strDest++ = * strSrc++) != ‘/0’ ) NULL ; return address ; } 将strSrc的内容复制到strDest //-------------------------------------------------------- //strcmp字符串比较 int mystrcmp(const char *str1, const char *str2) { assert(NULL != str1 && NULL != str2); for(int i=0; *(str1+i) != '/0' || *(str2+i) != '/0' ; ++i)//这里地址操作不能用str1++自增量,需要设置一个变量 { if(*(str1+i) > *(str2+i)) return 1; else if(*(str1+i) < *(str2+i)) return -1; } return 0; } 如果str1=str2 return 0;如果str1>str2 返回一个正数;如果str1<str2 返回一个负数。