Можно создать дубликат:
Reason for the OutputЧто будет отображаться на C-коде?
Привет,
Можете ли вы объяснить мне выход этого фрагмента кода? Ответ: «d»
void main()
{
short int a=5;
clrscr();
printf("%d"+1,a);
getch();
}
Спасибо.
Можно создать дубликат:
Reason for the OutputЧто будет отображаться на C-коде?
Привет,
Можете ли вы объяснить мне выход этого фрагмента кода? Ответ: «d»
void main()
{
short int a=5;
clrscr();
printf("%d"+1,a);
getch();
}
Спасибо.
"%d" + 1
является указателем на "d"
, поэтому на самом деле вы выполняете printf("d", a);
.
"%d"+1
"d"
, поэтому выход будет "d"
.
Вопрос часть ...
Почему не писатель просто использовал:
printf("d");
Является ли это то же самое?
и что это будет отображаться? –
Ну, я думал, что он будет показывать «d» без кавычек ...: -/ – Pacane
И ответ на ваш вопрос: потому что это домашнее задание, в котором учащиеся должны продемонстрировать, что они понимают указатели и строковые литералы, и OP хочет, чтобы мы сделали для него домашнюю работу. –
Duplicate: http://stackoverflow.com/questions/3880402/reason-for-the-output/3880411 – codaddict