我找到了这个例子float a = 35E5;
并尝试编译它并成功编译。我发现E告诉编译器将多少个十进制零添加到变量值。
然后我尝试为这个变量赋值
float a = 5.0, b = 5.5;
float c;
c = (a + b)E5;
和编译器报告错误:
现在,我的问题是:为什么不允许将值分配给变量,例如第2个例子,并允许在第1个例子中使用?
答案 0 :(得分:10)
E
指定科学记数法,仅对声明文字
我发现E告诉编译器将多少个十进制零添加到变量值。
不,不。语法aEb
表示a x 10^b
。这不是C ++特有的,这是数学中用来表示scientific notation的公认标准。