char数组中除去某个元素

Posted xiaoxi666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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。

以上是关于char数组中除去某个元素的主要内容,如果未能解决你的问题,请参考以下文章

c语言如何删除数组中的某个元素

PHP获取二维数组中相同的元素

请教下,怎么查到数组中,某个字符串,在数组中的索引位置?

js中已知数组里面某个值,需要删除这个值怎么实现

thymeleaf引入公共页面的某个片段

在 C 代码中将 char 数组元素转换为等效的十六进制