java pointer_Java Pointer.pointerToCString方法代码示例

import org.bridj.Pointer; //导入方法依赖的package包/类

@Test

public void controlTest() {

Pointer name = Pointer.pointerToCString("base");

Pointer program = Pointer.pointerToCString(PROGRAM3);

clingo_part p = new clingo_part();

p.name(name);

p.params(null);

p.size(0);

Pointer parts = Pointer.allocate(clingo_part.class);

parts.set(p);

Pointer major = Pointer.allocateInt();

Pointer minor = Pointer.allocateInt();

Pointer revision = Pointer.allocateInt();

LIB.clingo_version(major, minor, revision);

System.out.println("Clingo library version: " + major.getInt() + "." + minor.getInt() + "." + revision.getInt());

// create a control object and pass command line arguments

Pointer> control = Pointer.allocatePointer(clingo_control.class);

if (!LIB.clingo_control_new(null, 0, null, null, 20, control)) {

error(control, "Could not create controller");

}

long startTime = System.currentTimeMillis();

// add a logic program to the base part

if (!LIB.clingo_control_add(control.get(), name, null, 0, program)) {

error(control, "Error add the program to controller");

}

// ground the base part

if (!LIB.clingo_control_ground(control.get(), parts, 1, null, null)) {

error(control, "Error ground the program");

}

if (!solve(control)) {

error(control, "Error solving the program");

}

float endTime = (System.currentTimeMillis() - startTime) / 1000f;

System.out.println("Time:" + String.format(TIME_FORMAT, endTime) + "s");

LIB.clingo_control_free(control.get());

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值