Here's an example of using vec():
#!/usr/local/bin/perl -w
use strict;
# a bit string
my $bits = '';
# set some of the bits
my @offsets = (0, 2, 4, 6);
for my $offset (@offsets) {
vec($bits, $offset, 1) = 1;
}
# test which bits are set
my @bits = (0 .. 10);
for my $bit (@bits) {
if (vec($bits, $bit, 1)) {
print "bit $bit is set\n";
} else {
print "bit $bit is not set\n";
}
}
__END__
$ ./vec-demo.pl
bit 0 is set
bit 1 is not set
bit 2 is set
bit 3 is not set
bit 4 is set
bit 5 is not set
bit 6 is set
bit 7 is not set
bit 8 is not set
bit 9 is not set
bit 10 is not set
|