Недавно я услышал, как мой профессор говорил о том, что он может сделать что-то подобное. Я не могу найти ни одного метода, который бы звучал так. Так что мой вопрос в силе. В стандартном цикле getchar while, как можно было бы заглянуть в следующий char. В этом цикле я передаю некоторые массивы и переключаю символы цикла с символов массива на символы массива новостей для строки, которая вводится через командную строку.
в любом случае код делает то, для чего он предназначен, в большинстве случаев, за исключением того, что он также должен рассматривать символы «/t» и т. д. как один символ, а не как два. Я думал проверить if(c == '\') а затем проверить, будет ли следующий символ r, t, n и т.д.
Вопрос TL: DR: как заставить этот цикл находить escape-символы и рассматривать их как один символ вместо двух? Спасибо большое.
void tr_str(char s[], char news[]){
int c;
size_t k =0;
while ((c = getchar()) != EOF)
{
for(k=0; k < strlen(s);k++)
{
if(c == s[k])
{
c = news[k];
}
}
putchar(c);
}
}