I have the following multiple-choice question and I cannot figure out why (A) and (C) are incorrect, any explanation would be appreciated! The only correct answer in the following question is (B).
Which of the following is a correct usage of scanf?
(A)int i=0; scanf("%d", i);
(B)int i=0; int *p=&i; scanf("%d", p);
(C)char *s="1234567"; scanf("%3s", &s);
(D)char c; scanf("%c", c);