In the notation used for C integer constants, an octal constant begins with 0. This distinguishes it from ordinary decimal notation and hexadecimal notation.
Programming in C MCQ - Constants, Variables and Data Types
0456 follows octal notation: it starts with 0 and uses digits permitted in base eight. 08 contains an invalid octal digit, while the other choices do not form valid octal integer constants.
A hexadecimal integer constant in C begins with the prefix 0x or 0X. The prefix indicates that the following digits are interpreted in base sixteen.
0x56A has the required hexadecimal prefix and uses valid hexadecimal digits. G is not a hexadecimal digit, and decimal points or commas do not form an integer constant here.
Real constants represent values that may contain a fractional component and are commonly called floating-point constants.

