だから私はこのscanfを持っています
scanf ("%30[^\n]%c", &i
ユーザーが 30 文字を超える文字を入力した場合に、文字が多すぎるというメッセージを表示し、再入力を促す条件を追加するにはどうすればよいですか?
入力が正しくなるまで再入力し続けるループ全体を次に示しますが、適切な条件が設定されていません
int keeptrying = 1, rc;
char after, i;
do
{
rc = scanf ("%30[^\n]%c", &i, &after);
if (rc == 0)
{
printf (" **Invalid input try again: ");
clear();
}
else if (after != '\n')
{
printf (" **Trailing characters try again: ");
clear();
}
else if () // THIS IS WHERE I WOULD PUT THE CONDITION
{
printf (" **Title is longer than 30 characters: ");
}
else
{
keeptrying = 0;
}
} while (keeptrying == 1);
return i;