是012e2八进制还是浮动?

Jac*_*ack 1 c decimal type-conversion octal

应该如何用C语言解析?

1000 
Run Code Online (Sandbox Code Playgroud)

(如果八进制012*10 ^ 2)

要么

1200 
Run Code Online (Sandbox Code Playgroud)

(如果整数为十进制)?

Kei*_*son 6

带指数的常量总是浮点数.

C中没有八进制浮点常量.(有十六进制浮点常量,但这不是其中之一).

这012e2是一种不必要的混淆写作方式1200.0.

(我认为没有充分的理由以这种方式写出来,除非意图是故意混淆.)


oua*_*uah 5

012e2是一个文字的类型double和价值相同1200.0.

浮点常量是十进制或十六进制浮点常量.十进制浮点常量可以从任何数字开始,包括0.

(C99.6.4.4.2浮动常数)

decimal-floating-constant:
    fractional-constant exponent-partopt floating-suffixopt
    digit-sequence exponent-part floating-suffixopt

digit-sequence:
    digit
    digit-sequence digit
Run Code Online (Sandbox Code Playgroud)