summaryrefslogtreecommitdiff
path: root/reference/C/CONTRIB/SNIP/bitops.c
diff options
context:
space:
mode:
Diffstat (limited to 'reference/C/CONTRIB/SNIP/bitops.c')
-rwxr-xr-xreference/C/CONTRIB/SNIP/bitops.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/reference/C/CONTRIB/SNIP/bitops.c b/reference/C/CONTRIB/SNIP/bitops.c
new file mode 100755
index 0000000..1d0c0bc
--- /dev/null
+++ b/reference/C/CONTRIB/SNIP/bitops.c
@@ -0,0 +1,13 @@
+/*
+** Bit set, clear, and test operations
+**
+** public domain snippet by Bob Stout
+*/
+
+typedef enum {ERROR = -1, FALSE, TRUE} LOGICAL;
+
+#define BOOL(x) (!(!(x)))
+
+#define BitSet(arg,posn) ((arg) | (1L << (posn)))
+#define BitClr(arg,posn) ((arg) & ~(1L << (posn)))
+#define BitTst(arg,posn) BOOL((arg) & (1L << (posn)))