我试图将char* argv[]值转换为float,如下所示:

#include<iostream>
using namespace std;
int main(int argc, char *argv[])
{

    float num1;
    num1 = atof(argv[1]);
    return 0;
}


我什至尝试了num1 = (float) (argv[1])。但是没有用。请帮忙。
但这是行不通的。给出如下错误

parampass.cpp: In function 'int main(int, char**)':
parampass.cpp:8:11: error: redeclaration of 'float num1'
     float num1 = atof(argv[1]);
           ^
parampass.cpp:7:11: error: 'float num1' previously declared here
     float num1;
           ^


任何帮助将不胜感激!!

最佳答案

擦除float num1 = atof(argv[1])中的浮点;
您已经在上面声明了变量。您不能两次声明相同的变量。在您粘贴正确的问题的代码中不存在此问题。我想这意味着您设法自己解决了。

关于c++ - cpp char float 到不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29792459/

10-17 01:28