将C ++代码转换为JAVA

时间:2014-04-13 15:10:05

标签: java c++

#include <iostream>

using namespace std;
int fun(int *k);

int main() {
    int i = 10, j = 10, sum1,sum2;
    sum1 = (i / 2) + fun(&i);
    sum2 = fun(&j) + (j / 2);
    cout<< sum1<< " "<<sum2<<endl;
}

int fun(int *k) {
    *k += 4;
    return 3 * (*k) - 1; 
}

我必须将我的代码转换为已经转换的Java代码,但我找不到我的错误,我无法将变量指向对方..

public class System{

   public static void main(String[] args) {
      int i = 10;
      int j = 10;
      int sum1 = (i / 2) + fun(k.value=i);
      int sum2 = fun(k.value=j) + (j / 2);
      System.out.println("%d%d",sum1,sum2 );
   }


   public static int fun(int k) {
      intobj k;
      int k= new k();
      k.value += 4;
      return 3 * (k.value) - 1; 
   }
}

当我查看int sum1 =(i / 2)+ fun(k.value = i)时,这是我的java代码;          int sum2 = fun(k.value = j)+(j / 2);关于指向真实价值的部分是不正确的。我怎样才能解决指针问题。谢谢。

1 个答案:

答案 0 :(得分:1)

问题是您使用的是int而不是intobj,而您希望通过引用(c {+ {}}}传递内容。

在您的主要功能中,您应尝试将&i声明为jintobjfun的参数也应为{ {1}}。

代码:

k