Difficulty: Easy
Correct Answer: one
Explanation:
Introduction / Context:
This question probes pointer arithmetic with argv. The expression ++argv advances the pointer to the first user argument and then dereferences it to a char string.
Given Data / Assumptions:
Concept / Approach:
Pre-increment ++argv moves the argv pointer from &argv[0] to &argv[1]. Dereferencing with * yields argv[1], the first user argument string, "one".
Step-by-Step Solution:
Verification / Alternative check:
If you used printf("%s\n", argv[2]); you would get "two". The *++argv form is a compact idiom for skipping argv[0].
Why Other Options Are Wrong:
Common Pitfalls:
Confusing *argv++ with *++argv: post-increment returns the old pointer, pre-increment returns the incremented one; here pre-increment is used.
Final Answer:
one
Discussion & Comments