Каково практическое использование форматов "%*"
в scanf(). Если этот формат существует, для него должна быть какая-то цель. Следующая программа дает странный вывод.Что такое scanf ("% * s") и scanf ("% * d") идентификаторы формата?
#include<stdio.h>
int main()
{
int i;
char str[1024];
printf("Enter text: ");
scanf("%*s", &str);
printf("%s\n", str);
printf("Enter interger: ");
scanf("%*d", &i);
printf("%d\n", i);
return 0;
}
Выход:
[email protected]:~$ gcc -Wall -pedantic d.c
d.c: In function ‘main’:
d.c:8: warning: too many arguments for format
d.c:12: warning: too many arguments for format
[email protected]:~$ ./a.out
Enter text: manav
D
Enter interger: 12345
372
[email protected]:~$
Manav, основываясь на некоторых ваших недавних вопросах, вам следовало бы прочитать учебник. –
@Alok: Хорошо, я прочитал учебник, но не вдавался в такие подробности. Большинство учебников не дают примеров, обслуживающих использование в режиме реального времени. Я думаю, лучше всего было бы прочитать учебник «The Compiler Design». –
@ Manav: Вам определенно не нужна книга «C Compiler Design». Вы пробовали K & R? –