123456789123.....
我想去掉4,怎么办?后面具体有多少数据不清楚,
后面的数据向前占据他前面的数据的位置

解决方案 »

  1.   

    如果是CString类型的话可以用str.Replace(“4”,“”),不是CString类型的可以先转换成CString
      

  2.   

    char str[] = "123456789123";
    for(int i,int j; str[i+j]; i++)
    {
    if(str[i+j]=='4')
    {
    j++;
    continue;
    }
    str[i] = str[i+j];
    }
      

  3.   

    如果是CString,则还可以调用Delete函数,如:   str = "123456789123!";
       printf("Before: %s\n", (LPCTSTR) str);
       int n = str2.Delete(3, 1);
       printf("After: %s\n", (LPCTSTR) str);
    则:输出  Before:123456789123
             After:12356789123
      

  4.   

    用数据结构~就行了~ 
    if(p->link!=NULL)
    {q=p->link;
      p->link=q->link;
    free(q);
    }
    }
      

  5.   

    FILE *fin=fopen("c:\\2.txt","r");
    FILE *fout=fopen("c:\\1.txt","w");
    BYTE byChar;
    while(fread(&byChar,1,1,fin))
    if(byChar!='4')
    fwrite(&byChar,1,1,fout);
    fclose(fin);
    fclose(fout);