char数组中除去某个元素
1 /* 2 本程序说明: 3 4 char数组中除去某个元素(其实就是strcpy源码的变形) 5 6 */ 7 #include <iostream> 8 #include <cassert> 9 #include <cstring> 10 using namespace std; 11 12 char * remove_char(char* src, int length, char c){ 13 char *dst=src; 14 char *res=dst; 15 assert(src!=NULL && length!=0); 16 int i=length; 17 while(i>0){ 18 --i; 19 if(c==*src){ 20 src++; 21 continue; 22 } 23 if(*src!='\0'){ 24 *dst++=*src++; 25 } 26 //cout<<i<<" "<<src<<" "<<dst<<endl; 27 } 28 *dst++='\0'; 29 return res; 30 } 31 32 int main() 33 { 34 char test[]="appleappleaaasasasasas"; 35 //cout<<strlen(test)<<endl; 36 char c='a'; 37 char* dest=remove_char(test,strlen(test),c); 38 cout<<dest<<endl;//pplepplesssss 39 return 0; 40 }
平时一定要多加练习,不然直接手写代码很容易出bug。
『注:本文来自博客园“小溪的博客”,若非声明均为原创内容,请勿用于商业用途,转载请注明出处http://www.cnblogs.com/xiaoxi666/』