diff options
author | Michael Hunteman <michael@huntm.net> | 2023-07-04 17:03:53 -0500 |
---|---|---|
committer | Michael Hunteman <michael@huntm.net> | 2023-07-06 17:23:45 -0500 |
commit | bfce8f0d0d828209ec0bec71371ee94a7ad62d3e (patch) | |
tree | bdf49ca788ca1ca030d5b1cccfd0c9dffeb3f69f /three/escape.c |
Initial commit
Diffstat (limited to 'three/escape.c')
-rw-r--r-- | three/escape.c | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/three/escape.c b/three/escape.c new file mode 100644 index 0000000..1f1dfe9 --- /dev/null +++ b/three/escape.c @@ -0,0 +1,53 @@ +#include <stdio.h> + +void +ctoe() +{ + int c; + while ((c = getchar()) != EOF) { + if (c == '\\') { + c = getchar(); + switch(c) { + case 'n': + putchar('\n'); + break; + case 't': + putchar('\t'); + break; + default: + putchar(c); + break; + } + } else { + putchar(c); + } + } +} + +void +etoc() +{ + int c; + while ((c = getchar()) != EOF) { + switch(c) { + case '\n': + putchar('\\'); + putchar('n'); + break; + case '\t': + putchar('\\'); + putchar('t'); + break; + default: + putchar(c); + break; + } + } +} + +int +main() +{ + etoc(); + return 0; +} |