73 lines
2 KiB
Perl
73 lines
2 KiB
Perl
# file: runme.pl
|
|
|
|
use example;
|
|
|
|
# Try to set the values of some global variables
|
|
|
|
$example::ivar = 42;
|
|
$example::svar = -31000;
|
|
$example::lvar = 65537;
|
|
$example::uivar = 123456;
|
|
$example::usvar = 61000;
|
|
$example::ulvar = 654321;
|
|
$example::scvar = -13;
|
|
$example::ucvar = 251;
|
|
$example::cvar = "S";
|
|
$example::fvar = 3.14159;
|
|
$example::dvar = 2.1828;
|
|
$example::strvar = "Hello World";
|
|
$example::iptrvar= example::new_int(37);
|
|
$example::ptptr = example::new_Point(37,42);
|
|
$example::name = "Bill";
|
|
|
|
# Now print out the values of the variables
|
|
|
|
print "Variables (values printed from Perl)\n";
|
|
|
|
print "ivar = $example::ivar\n";
|
|
print "svar = $example::svar\n";
|
|
print "lvar = $example::lvar\n";
|
|
print "uivar = $example::uivar\n";
|
|
print "usvar = $example::usvar\n";
|
|
print "ulvar = $example::ulvar\n";
|
|
print "scvar = $example::scvar\n";
|
|
print "ucvar = $example::ucvar\n";
|
|
print "fvar = $example::fvar\n";
|
|
print "dvar = $example::dvar\n";
|
|
print "cvar = $example::cvar\n";
|
|
print "strvar = $example::strvar\n";
|
|
print "cstrvar = $example::cstrvar\n";
|
|
print "iptrvar = $example::iptrvar\n";
|
|
print "name = $example::name\n";
|
|
print "ptptr = $example::ptptr", example::Point_print($example::ptptr), "\n";
|
|
print "pt = $example::pt", example::Point_print($example::pt), "\n";
|
|
|
|
print "\nVariables (values printed from C)\n";
|
|
|
|
example::print_vars();
|
|
|
|
print "\nI'm going to try and update a structure variable.\n";
|
|
|
|
$example::pt = $example::ptptr;
|
|
|
|
print "The new value is ";
|
|
example::pt_print();
|
|
print "You should see the value", example::Point_print($example::ptptr), "\n";
|
|
|
|
|
|
print "\nNow I'm going to try and modify some read only variables\n";
|
|
|
|
|
|
print " Trying to set 'status'\n";
|
|
eval { $example::status = 0; };
|
|
if (!$@) {
|
|
die("status");
|
|
}
|
|
print " get error for 'status'\n";
|
|
|
|
print " Trying to set 'path'\n";
|
|
eval { $example::path = "Whoa!";};
|
|
if (!$@) {
|
|
die("path");
|
|
}
|
|
print " get error for 'path'\n";
|