annotate share/delvs-master/main.c @ 12257:1924fe176291 draft

<fizzie> ` sed -e \'s|wisdom|bin|\' < ../bin/cwlprits > ../bin/cblprits; chmod a+x ../bin/cblprits
author HackEso <hackeso@esolangs.org>
date Sat, 07 Dec 2019 23:36:53 +0000
parents 38a5b4d8a98e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3840
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
1 #include <stdio.h>
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
2 #include <string.h>
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
3 #include <stdlib.h>
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
4 #include "delvs.h"
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
5
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
6 int main(int argc, char *argv[]) {
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
7 if(argc > 1) {
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
8 FILE *fp;
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
9 long size;
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
10
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
11 fp = fopen(argv[1], "r");
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
12
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
13 if(fp == NULL) {
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
14 printf("File: \"%s\" not found\n", argv[1]);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
15 return 1;
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
16 }
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
17
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
18 fseek(fp, 0, SEEK_END);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
19 size = ftell(fp);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
20 rewind(fp);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
21
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
22 char *temp = (char*) malloc (100);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
23
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
24 char *file = (char*) malloc (size);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
25
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
26 file[0] = '\0';
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
27
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
28 while (fgets(temp, 100, fp) != NULL) strcat(file, temp);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
29
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
30 free(temp);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
31 fclose(fp);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
32
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
33 struct Data g;
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
34
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
35 g.code = file;
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
36 g.bit = 7;
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
37 g.pointer = &g.vars[15000];
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
38
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
39 lexer(&g);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
40 }
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
41 else {
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
42 printf("Usage: %s <filename>\n", argv[0]);
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
43 }
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
44 return 0;
38a5b4d8a98e <oerjan> rm -R share/delvs-master; mv delvs-master share
HackBot
parents:
diff changeset
45 }