#include <string.h>
void delchar(char* str, char c)
{
int len = strlen(str);
char temp[MAXN];
int j = 0;
for (int i = 0; i < len; i++)
{
if (str[i] != c)
{
temp[j] = str[i];
j++;
}
}
temp[j] = '\0';
int len_1 = strlen(temp);
int i = 0;
for (i = 0; i < len_1; i++)
{
str[i] = temp[i];
}
str[i] = '\0';
}
这个函数这么改,供参考:
void delchar(char* str, char c)
{
int i, j;
for (i = 0, j = 0; str[i]; i++)
{
if (str[i] != c)
str[j++] = str[i];
}
str[j] = '\0';
}
程序修改如下所示,试下看能满足需求不:
#include <string.h>
void delchar(char* str, char c)
{
int len = strlen(str);
char temp[MAXN];
int j = 0;
int i=0;
for (i = 0; i < len; i++)
{
if (str[i] != c)
{
temp[j] = str[i];
j++;
}
}
temp[j] = '\0';
if(j==0)
{
}
else
{
//
for (i = 0; i <=j; i++)
{
str[i] = temp[i];
}
}
}