Difficulty: Easy
Correct Answer: 6
Explanation:
Introduction / Context:
This is a direct application of strlen to a string literal. strlen counts characters up to but not including the first null terminator.
Given Data / Assumptions:
Concept / Approach:
strlen("abcdef") returns the number of visible characters before the implicit '\0'. Here, that count is the number of digits in the literal.
Step-by-Step Solution:
List characters: 1 2 3 4 5 6 → 6 characters.strlen returns 6, which printf prints as 6.
Verification / Alternative check:
Compare with sizeof "123456" which would be 7 (adds the terminating null). This highlights the difference between strlen (logical length) and sizeof (storage in bytes for a literal).
Why Other Options Are Wrong:
(12) doubles the count; (7) confuses with sizeof. (2) and (0) have no basis here.
Common Pitfalls:
Confusing strlen with sizeof for string literals.
Final Answer:
6
Discussion & Comments