注册 登录
编程论坛 C++教室

这个错误是啥子意思?

小白到底白不 发布于 6 天前 15:04, 83 次点击
程序代码:
#include <iostream>
int main()
{
    using namespace std;
    float a = 2.34E + 22f;
    float b = a + 1.0f;
    cout << "a = " << a << endl;
    cout << "b - a = " << b - a << endl;
    return 0;
}


错误信息是:
程序代码:

---------- 用msys2编译 ----------
017.cpp:5:15: error: exponent has no digits
    5 |     float a = 2.34E + 22f;
      |               ^~~~~
017.cpp: In function ‘int main()’:
017.cpp:5:23: error: unable to find numeric literal operatoroperator""f’
    5 |     float a = 2.34E + 22f;
      |                       ^~~

输出完成 (耗时 0 秒) - 正常终止
3 回复
#2
forever746 天前 16:30
用于初始化变量a的浮点常量内部不能有空格。
#3
小白到底白不5 天前 03:52
我自己找到答案了
2.34E那个E后面必须跟着个数,比如2.34E5
22f必须有点才是浮点数,比如22.0f
#4
forever745 天前 08:46
那里本来就应该是2.34e22
而已
1