-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathstring_parser.c
More file actions
50 lines (37 loc) · 1.17 KB
/
string_parser.c
File metadata and controls
50 lines (37 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
//
// Created by vadim on 01.01.2018.
//
#include "string_parser.h"
void parse_string(char *query) {
char temp_query[strlen(query)];
strcpy(temp_query, query);
size_t i = 0;
while (temp_query[i]) {
if (islower(temp_query[i])) {
temp_query[i] = (char) toupper(temp_query[i]);
}
i++;
}
if (!(temp_query - strstr(temp_query, "CREATE TABLE"))) {
create_table(temp_query + strlen("CREATE TABLE "));
}
if (!(temp_query - strstr(temp_query, "CREATE DATABASE"))) {
if (!(temp_query - strstr(temp_query, "CREATE DATABASE IF NOT EXIST"))) {
create_database(temp_query + strlen("CREATE DATABASE IF NOT EXIST "));
} else {
create_database(temp_query + strlen("CREATE DATABASE "));
}
}
}
char *read_string(size_t size) {
char *sequenceArray[size];
signed char currentLetter = 0;
unsigned char counter;
puts("Enter query:");
fflush(stdout);
for (counter = 0; (currentLetter = getchar()) != ';' && counter < size; ++counter) {
sequenceArray[counter] = currentLetter;
}
sequenceArray[counter] = ';';
return (EXIT_SUCCESS);
}