После проверки того, что strcat является местом возникновения ошибки, я затем проверяю предыдущий пример в моем назначении. В моих предыдущих примерах я использую strcat (фактически strncat) таким же образом, как и для моего следующего кода. Я не уверен.strcat дает мне ошибку ошибки сегментации
Цель моей программы - прокрутить «строку» и удалить любые встречные символы «c» из строки.
main.c:
char string[100]={0}, c[3];
printf("Enter a String: ");
fgets(string, 100, stdin);
if (string[98] == '\n' && string[99] == '\0') { while ((ch = fgetc(stdin)) != EOF && ch != '\n'); }
printf("Enter a Char: ");
fgets(c, 2, stdin);
while ((ch = fgetc(stdin)) != EOF && ch != '\n');
rmchr(string, c[0]);
Заголовок:
rmchr(char *string, char c)
{
int i=0;
char *word[100];
int s = strlen(string);
for(i=0; i<=(s-2); i++)
{
if(string[i] != c)
{
strcat(word, string[i]);
}
}
}
'strcat (слова, строки [я])' должны были не в состоянии компиляции. –
GCC иногда объявляет строковые функции внутренними, даже когда программист забыл '#include'. –
Davislor
У вас есть функция rmchr в файле заголовка? Если это так, его следует перенести в файл C. – Jens