C ++转换PHP代码将数字添加到字符串

时间:2013-12-23 23:14:11

标签: php c++

我正在尝试将PHP代码转换为C ++。

$this->Key + 1 + log2p (floor($TimePlot/$this->kY)*M_PI-2*20

在PHP中,Key是C ++中的字符串,key2是char *,timeplot是time_t,val是int。

key2 + 1 + log2(floor((double)timeplot/this->val*M_PI-2*20))

,错误是: 错误C2111:'+':指针添加需要整数操作数

我不知道如何让它发挥作用。提前谢谢。

1 个答案:

答案 0 :(得分:1)

如果你的$ this->键是字符串,并且你想在C ++中也得到一个字符串,那么你需要做这样的事情:

char bf[1024];
sprintf (bf, "%f", 1.0 + log2(floor((double)timeplot/this->val*M_PI-2*20)) );
std::string k = key2;
k += bf;

假设表达式中的其他所有内容都解析为可以参与数值计算的数值。我在这里使用了1024字节的缓冲区长度,你可以相应地调整它。