Machine-translated by Google. Questions are authored in English.
Top

Discussion

Which three are valid declarations of a char?

1.char c1 = 064770;

2.char c2 = 'face';

3.char c3 = 0xbeef;

4.char c4 = \u0022;

5.char c5 = '\iface';

6.char c6 = '\uface';

  • A.1, 2, 4
  • B.1, 3, 6
  • C.3, 5
  • D.5 only

Answer: B

(1), (3), and (6) are correct. char c1 = 064770; is an octal representation of the integer value 27128, which is legal because it fits into an unsigned 16-bit integer. char c3 = 0xbeef; is a hexadecimal representation of the integer value 48879, which fits into an unsigned 16-bit integer. char c6 = '\uface'; is a Unicode representation of a character.

char c2 = 'face'; is wrong because you can't put more than one character in a char literal. The only other acceptable char literal that can go between single quotes is a Unicode value, and Unicode literals must always start with a '\u'.

char c4 = \u0022; is wrong because the single quotes are missing.

char c5 = '\iface'; is wrong because it appears to be a Unicode representation (notice the backslash), but starts with '\i' rather than '\u'.

No comment is present. Be the first to comment.
Loading…

Post your comment

Please log in or register to post a comment.