| <?php |
| |
| require "example.php"; |
| |
| # First create some objects using the pointer library. |
| |
| print "Testing the pointer library\n"; |
| |
| $a = example::new_intp(); |
| $b = example::new_intp(); |
| $c = example::new_intp(); |
| example::intp_assign($a,37); |
| example::intp_assign($b,42); |
| |
| print " a = $a\n"; |
| print " b = $b\n"; |
| print " c = $c\n"; |
| |
| # Call the add() function wuth some pointers |
| example::add($a,$b,$c); |
| |
| # Now get the result |
| $r = example::intp_value($c); |
| |
| print " 37 + 42 = $r\n"; |
| |
| # Clean up the pointers |
| example::delete_intp($a); |
| example::delete_intp($b); |
| example::delete_intp($c); |
| |
| # Now try the typemap library |
| # This should be much easier. Now how it is no longer |
| # necessary to manufacture pointers. |
| |
| print "Trying the typemap library\n"; |
| $r = example::sub(37,42); |
| print " 37 - 42 = $r\n"; |
| |
| # Now try the version with multiple return values |
| # print "Testing multiple return values\n"; |
| # $a = example::divide(42,37); |
| # $q = $a[0] |
| # $r = $a[1] |
| # print " 42/37 = $q remainder $r\n"; |
| |
| ?> |