Опасность использования% * c для очистки буфера scanf

Есть ли опасность использования% * c в scanf () для очистки буфера при необходимости.

Например:

char c;
for (int i = 0; i < 5; i++) {
  scanf("%c%*c", &c);
}

Или же

char* str;
char c;
int i;
scanf("%s", str);
scanf("%d%*c", &i);
scanf("%c%*c", &c);

Должны ли быть проблемы с переполнением буфера или другими проблемами безопасности? Кажется, нет официальной документации для использования звездочки в scanf для C (РЕДАКТИРОВАТЬ Это не правда), поэтому яУ меня возникли проблемы с выяснением, что именно происходит с дополнительными символами, которые вводятся. Есть ли лучший способ очистки буфера scanf в C?

Ответы на вопрос(3)

Ваш ответ на вопрос