Selaa lähdekoodia

Updated something, dunno what...

master
Ognjen Milan Robovic 8 kuukautta sitten
vanhempi
commit
e0198b52af
2 muutettua tiedostoa jossa 50 lisäystä ja 11 poistoa
  1. +33
    -0
      xtandard.c
  2. +17
    -11
      xtandard.h

+ 33
- 0
xtandard.c Näytä tiedosto

@@ -47,6 +47,16 @@ void echo (char * data) {
out (data, string_length (data));
}

void echo_new_line (void) {
out ("\n", 1);
}

void echo_byte (int byte) {
out ("0123456789ABCDEF" + (byte % 256) / 16, 1);
out ("0123456789ABCDEF" + (byte % 256) % 16, 1);
out (" ", 1);
}

void fatal_failure (int condition, char * message) {
if (condition != 0) {
echo ("\033[1;31m[!]\033[0m ");
@@ -426,6 +436,12 @@ int character_is_underscore (char character) {
return ((int) (character == '_'));
}

int character_is_hexadecimal (char character) {
char * hexadecimals = "0123456789ABCDEF";

return (character_compare_array (character, hexadecimals, string_length (hexadecimals)));
}

int character_compare_array (char character, char * character_array, int count) {
int i = 0;

@@ -664,4 +680,21 @@ void terminal_show_cursor (int show) {
}
}

int encode_byte (char * byte) {
int encode = 0;

fatal_failure (character_is_hexadecimal (byte [0]) == 0, "encode_byte: Upper byte character is not hexadecimal digit.");
fatal_failure (character_is_hexadecimal (byte [1]) == 0, "encode_byte: Lower byte character is not hexadecimal digit.");

encode = ((byte [0] - (character_is_digit (byte [0]) ? ('0') : ('A' - 10))) << 4) | (byte [1] - (character_is_digit (byte [1]) ? ('0') : ('A' - 10)));

return (encode);
}

char * decode_byte (int byte) {
static char * decode = " ";

return (decode);
}

#endif

+ 17
- 11
xtandard.h Näytä tiedosto

@@ -74,7 +74,9 @@ extern char * * file_list_data;
extern void in (void *, int);
extern void out (void *, int);

extern void echo (char *);
extern void echo (char *);
extern void echo_new_line (void);
extern void echo_byte (int);

extern void fatal_failure (int, char *);

@@ -103,16 +105,17 @@ extern void file_list_import (char *);
extern void file_list_export (char *);
extern void file_list_delete (void);

extern int character_is_uppercase (char);
extern int character_is_lowercase (char);
extern int character_is_digit (char);
extern int character_is_blank (char);
extern int character_is_alpha (char);
extern int character_is_symbol (char);
extern int character_is_visible (char);
extern int character_is_invisible (char);
extern int character_is_escape (char);
extern int character_is_underscore (char);
extern int character_is_uppercase (char);
extern int character_is_lowercase (char);
extern int character_is_digit (char);
extern int character_is_blank (char);
extern int character_is_alpha (char);
extern int character_is_symbol (char);
extern int character_is_visible (char);
extern int character_is_invisible (char);
extern int character_is_escape (char);
extern int character_is_underscore (char);
extern int character_is_hexadecimal (char);

extern int character_compare_array (char, char *, int);

@@ -140,4 +143,7 @@ extern void terminal_clear (void);
extern void terminal_style (int, int);
extern void terminal_show_cursor (int);

extern int encode_byte (char *);
extern char * decode_byte (int);

#endif

Loading…
Peruuta
Tallenna