aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordx <aryadevchavali1@gmail.com>2020-05-07 02:58:56 +0100
committerdx <aryadevchavali1@gmail.com>2020-05-07 02:58:56 +0100
commit510d6384033259be44b55e73283bafe38a53190a (patch)
tree7cb01255fc4dcd250010ba5f93dba119f4585092
parent80c5f9a8129f5a151770b0979b9e39777cffb9f6 (diff)
downloadmdhtml-510d6384033259be44b55e73283bafe38a53190a.tar.gz
mdhtml-510d6384033259be44b55e73283bafe38a53190a.tar.bz2
mdhtml-510d6384033259be44b55e73283bafe38a53190a.zip
+find_string algorithm
This algorithm looks for substrings in a big string, attempting to find the index of the first occurence.
-rw-r--r--Converter/includes/compiler.h3
-rw-r--r--Converter/src/compiler.c9
2 files changed, 10 insertions, 2 deletions
diff --git a/Converter/includes/compiler.h b/Converter/includes/compiler.h
index 8b2fa1f..3b89b49 100644
--- a/Converter/includes/compiler.h
+++ b/Converter/includes/compiler.h
@@ -4,6 +4,7 @@
#include <stdlib.h>
typedef char *string;
-string compile_line(string line, size_t size_of_line, string line_or_source);
+string compile_line(string line, size_t sz_line, string line_or_source);
+int find_string(string src, string query, size_t sz_src, size_t sz_query);
#endif // __COMPILER_H_
diff --git a/Converter/src/compiler.c b/Converter/src/compiler.c
index 7efa032..df97c22 100644
--- a/Converter/src/compiler.c
+++ b/Converter/src/compiler.c
@@ -2,7 +2,14 @@
#include <stdio.h>
#include <string.h>
-void compile_inner_text(string dest, string src, size_t size_of_line,
+int find_string(string src, string query, size_t sz_src, size_t sz_query)
+{
+ int j = 0;
+ while ((j < (sz_src - sz_query)) && (strncmp(query, src + j, sz_query))) ++j;
+ return j;
+}
+
+void compile_inner_text(string dest, string src, size_t sz_src,
string line_or_source)
{
/* cursor is the current index on the dest pointer