Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/132.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 无法将数字字符串从字符串数组转换为浮点_C++_String_Type Conversion - Fatal编程技术网

C++ 无法将数字字符串从字符串数组转换为浮点

C++ 无法将数字字符串从字符串数组转换为浮点,c++,string,type-conversion,C++,String,Type Conversion,我正在尝试将包含字符串的数组转换为浮点。索引[j][2]处的每个字符串都将是一个数字,必须将其转换为浮点数。i是一个int,它包含数组的“行”总数。首先,我需要将其乘以8,然后除以10,然后将其转换为字符串并存储回数组。我想以后再把它转换成一个浮点数,但我需要一个每个浮点数所属索引的记录。因此,我需要一种可靠的方法将字符串转换为浮点数。以下操作失败,并显示此错误消息: for (int j = 0; j < i; j++) { float wow = strtof(array[j]

我正在尝试将包含字符串的数组转换为浮点。索引[j][2]处的每个字符串都将是一个数字,必须将其转换为浮点数。i是一个int,它包含数组的“行”总数。首先,我需要将其乘以8,然后除以10,然后将其转换为字符串并存储回数组。我想以后再把它转换成一个浮点数,但我需要一个每个浮点数所属索引的记录。因此,我需要一种可靠的方法将字符串转换为浮点数。以下操作失败,并显示此错误消息:

for (int j = 0; j < i; j++) {
    float wow = strtof(array[j][2]);
    array[j][3] = (wow + float(i/10)*8);
}
for(int j=0;j
错误:

无法将参数“1”的“std::string{aka std::basic_string}”转换为“const char*”,将其转换为“float strof(const char*,char**)”


strof
的变体,如
stof
atof
给了我相同的错误。

您使用了错误的函数。要将
std::string
转换为
float
,需要使用not
strof


注意:
std::stof
需要C++11或更高版本。如果你没有,你可以使用
atof
,但是你需要使用
c_str()

,这里简单的答案是使用
array[j][2].c_str()
,并且有很多关于类似函数调用的问题。给出了错误消息,还有一个“真实”的副本,我没有c++11。但是,当我使用
float wow=strof(array[j][2].c_str())
时,它说参数太少了。@Reginsmal我的答案有一个错误。如果没有C++11,则应使用atof
float wow=atof(数组[j][2].c_str())