我想在PHP中研究以下脚本,它实际上是在C中,我如何将完全相同的代码转换为PHP?
int solution(int A[], int N) {
int equi(int arr[], int n) {
if (n==0) return -1;
long long sum = 0;
int i;
for(i=0;i<n;i++) sum+=(long long) arr[i];
long long sum_left = 0;
for(i=0;i<n;i++) {
long long sum_right = sum - sum_left - (long long) arr[i];
if (sum_left == sum_right) return i;
sum_left += (long long) arr[i];
}
return -1;
}
}
您需要去掉函数的返回类型(除非您想在php7中这样做)并删除变量类型。在php中,函数以关键字"function"开头。以下是您的代码的可能转换。不应该有语法错误,但代码中的一点变化可能需要获得C.的确切功能
<?php
function solution($A, $N) {
function equi($arr, $n) {
if ($n==0) return -1;
$sum = 0;
for($i=0;$i<$n;$i++)
$sum+=$arr[$i];
$sum_left = 0;
for($i=0;$i<$n;$i++) {
$sum_right = $sum - $sum_left - $arr[$i];
if ($sum_left == $sum_right) return $i;
$sum_left += $arr[$i];
}
return -1;
}
}
没有任何工具可以将C代码直接转换为PHP代码。你必须学习PHP并编写代码。PHP和C有相似的语法。通过所有可能的测试用例对其进行测试,并确保得到与C代码相同的结果。