!@#$%^&*()_+ のような数字や記号から文字列をクリアする関数を書きたいのですが、常に次のエラーが発生します: * glibc が検出されました./clear: 無効な fastbin エントリ (無料): 0x0000000001d29490 * *
コードは次のとおりです。
void clean(char *dirty)
{
int i = 0, j = 0;
char *temp;
temp = strdup(dirty);
while(i < strlen(temp))
{
if(isalpha(temp[i]) && isspace(temp[i]))
{
dirty[j] = temp[i];
j++;
}
i++;
}
dirty[j] = '\0';
free(temp);
}