这里说我这个内存不能written,*c=*d; 为什么不能操作?
WEL04 2009-08-25 06:54:23 #include "stdafx.h"
int del_substr(char * str,char * substr)
{
char * a=str;
char *b=substr;
char *d=NULL;
char *c=NULL;
if(str==NULL || substr==NULL)
return 0;
else
{
while(*a!='\0')
{
if(*a==*b)
{
c=a;
break;
}
else
a++;
}
if(c!=NULL)
{
while(*++b!='\0')
{
while(*++a!='\0')
{
if(*a==*b)
break;
}
if(*a=='\0')
return 6;
}
d=++a;
while(*c!='\0')
{
*c=*d; [color=#FF6600]// 这边赋值应该怎么写 这里说我这个内存不能written[/color]
c++
d++;
}
*c='\0';
return 1;
}
else
return 4;
}
}
int main(int argc, char* argv[])
{
int c=100;
char * a="/nabc";
char * b="b";
c=del_substr(a,b);
while(*a!='\0')
{
printf("%c\n",*a);
a++;
}
printf("%d",c);
return 1;
}