summaryrefslogtreecommitdiff
path: root/bugcode.c
diff options
context:
space:
mode:
authorhaturatu <warsaw21g@gmail.com>2024-06-15 13:45:47 +0900
committerhaturatu <warsaw21g@gmail.com>2024-06-15 13:45:47 +0900
commit18bdc2b4d4adeff5565ff208243b75e4f8ebbae5 (patch)
tree8ea15a8962b4605614530dd8c21cff52c8a66efd /bugcode.c
first commitHEADmain
Diffstat (limited to 'bugcode.c')
-rw-r--r--bugcode.c36
1 files changed, 36 insertions, 0 deletions
diff --git a/bugcode.c b/bugcode.c
new file mode 100644
index 0000000..c5fd8ae
--- /dev/null
+++ b/bugcode.c
@@ -0,0 +1,36 @@
+#include <stdio.h>
+
+/* trap code
+int my_read_char(const char *buffer, size_t *offs) {
+ if (buffer[*offs] != '\0') {
+ return buffer[*offs++];
+ } else {
+ return EOF;
+ }
+}
+*/
+
+int my_read_char(const char *buffer, size_t *offs) {
+ if (buffer[*offs] != '\0') {
+ return (unsigned char) buffer[(*offs)++];
+ } else {
+ return EOF;
+ }
+}
+
+int main() {
+ const char *buffer = "Hello, World!";
+ size_t offs = 0;
+
+ printf("Reading characters from buffer:\n");
+ while (1) {
+ int ch = my_read_char(buffer, &offs);
+ if (ch == EOF) {
+ break;
+ }
+ printf("Character read: %c, offs: %zu\n", ch, offs);
+ }
+
+ return 0;
+}
+