diff options
| author | Quentin Ladevie <qladevie@virtuos.com.cn> | 2024-08-23 14:02:40 +0200 |
|---|---|---|
| committer | Quentin Ladevie <qladevie@virtuos.com.cn> | 2024-08-23 14:02:40 +0200 |
| commit | 41d163a8a9be2f6d94e42157ad695fbe2cd000ae (patch) | |
| tree | c09d7fccb0a182d79b306f5c21157c37b6c616e9 /src | |
| parent | d3abac5411a2961d8bbef6eef56d1201f2113f40 (diff) | |
Fix compiler erros with MSVC pro
Fix atou64
Diffstat (limited to 'src')
| -rw-r--r-- | src/main.c | 5 | ||||
| -rw-r--r-- | src/utils.c | 27 |
2 files changed, 7 insertions, 25 deletions
@@ -141,8 +141,7 @@ struct ast_node* parse_primary(struct token* tokens, struct ast_node* nodes) { } } -struct ast_node* parse_command(struct token* tokens, struct ast_node* nodes) -{ +struct ast_node* parse_command(struct token* tokens, struct ast_node* nodes) { struct ast_node* cur_node = &nodes[0]; struct token* cur_token = &tokens[0]; switch(cur_token->type) { @@ -242,7 +241,7 @@ void run(struct ast_node* root) { process_commands = FALSE; } else if (cur_node.token->type == TOKEN_DUMP_MEMORY) { u64 addr = eval_number(cur_node.right); - u8 buf[16U] = {}; + u8 buf[16U] = { 0 }; size_t b_read = 0U; HRESULT hr = ReadProcessMemory( diff --git a/src/utils.c b/src/utils.c index f450e36..f7994f9 100644 --- a/src/utils.c +++ b/src/utils.c @@ -39,24 +39,6 @@ void u64toa(u64 number, char* str, u32 base) { } u64 atou64(const char* str, u32 len) { - static char codes[16U] = { - '0', - '1', - '2', - '3', - '4', - '5', - '6', - '7', - '8', - '9', - 'A', - 'B', - 'C', - 'D', - 'E', - 'F', - }; u64 number = 0U; u32 base = 10U; const char* c = str; @@ -67,18 +49,19 @@ u64 atou64(const char* str, u32 len) { } for (; (u32)(c - str) < len; c++) { + number *= base; u32 offset = 0U; if ('0' <= *c && *c <= '9') { offset = 48U; } else if ('a' <= *c && *c <= 'f') { - offset = 97U; + offset = 87U; } else if ('A' <= *c && *c <= 'F') { - offset = 65U; + offset = 55U; } else { return 0U; } - number += (*c - offset) * ((len - (u32)(c - str)) * base); + number += (*c - offset); } return number; @@ -87,7 +70,7 @@ u64 atou64(const char* str, u32 len) { void print(const char* format, ...) { va_list args; va_start(args, format); - char formatted_str[4096U] = {}; + char formatted_str[4096U] = { 0 }; STRSAFE_LPSTR cur_char = formatted_str; const char* cur_fmt = format; |
