Minor changes, still unfinished...
This commit is contained in:
parent
ac3db4408c
commit
1b114e9820
69
xtandard.c
69
xtandard.c
@ -521,7 +521,7 @@ int character_compare_array (char character, char * character_array) {
|
||||
}
|
||||
|
||||
int string_length (char * string) {
|
||||
int length = 0;
|
||||
int length;
|
||||
|
||||
if (string == NULL) {
|
||||
return (0);
|
||||
@ -532,29 +532,37 @@ int string_length (char * string) {
|
||||
return (length);
|
||||
}
|
||||
|
||||
void string_reverse (char * string) {
|
||||
int i = 0;
|
||||
int length = 0;
|
||||
char * string_reverse_limit (char * string, int limit) {
|
||||
int i;
|
||||
|
||||
fatal_failure (string == NULL, "string_reverse: String is null pointer.");
|
||||
|
||||
length = string_length (string);
|
||||
|
||||
for (i = 0; string [i] != '\0'; ++i) {
|
||||
string [i] = string [length - i];
|
||||
}
|
||||
for (i = 0; i != limit / 2; ++i) {
|
||||
char reverse_0 = string [limit - i];
|
||||
char reverse_1 = string [i];
|
||||
string [i] = reverse_0;
|
||||
string [limit - i] = reverse_1;
|
||||
}
|
||||
|
||||
void string_delete (char * string, int length) {
|
||||
return (string);
|
||||
}
|
||||
|
||||
char * string_reverse (char * string) {
|
||||
return (string_reverse_limit (string, string_length (string) - 1));
|
||||
}
|
||||
|
||||
char * string_delete (char * string, int length) {
|
||||
int i;
|
||||
|
||||
if ((string == NULL) || (length <= 0)) {
|
||||
return;
|
||||
return (string);
|
||||
}
|
||||
|
||||
for (i = 0; i != length; ++i) {
|
||||
string [i] = '\0';
|
||||
}
|
||||
|
||||
return (string);
|
||||
}
|
||||
|
||||
int string_compare (char * string_0, char * string_1) {
|
||||
@ -572,7 +580,7 @@ int string_compare (char * string_0, char * string_1) {
|
||||
return (1);
|
||||
}
|
||||
|
||||
void string_copy (char * string_0, char * string_1) {
|
||||
char * string_copy (char * string_0, char * string_1) {
|
||||
int i = 0;
|
||||
|
||||
fatal_failure (string_0 == NULL, "string_copy: Destination string is null pointer.");
|
||||
@ -581,9 +589,11 @@ void string_copy (char * string_0, char * string_1) {
|
||||
for (i = 0; i != string_length (string_1) + 1; ++i) {
|
||||
string_0 [i] = string_1 [i];
|
||||
}
|
||||
|
||||
return (string_0);
|
||||
}
|
||||
|
||||
void string_concatenate (char * string_0, char * string_1) {
|
||||
char * string_concatenate (char * string_0, char * string_1) {
|
||||
fatal_failure (string_0 == NULL, "string_concatenate: Destination string is null pointer.");
|
||||
fatal_failure (string_1 == NULL, "string_concatenate: Source string is null pointer.");
|
||||
|
||||
@ -596,6 +606,8 @@ void string_concatenate (char * string_0, char * string_1) {
|
||||
}
|
||||
|
||||
* string_0 = '\0';
|
||||
|
||||
return (string_0);
|
||||
}
|
||||
|
||||
int string_compare_limit (char * string_0, char * string_1, int limit) {
|
||||
@ -613,22 +625,24 @@ int string_compare_limit (char * string_0, char * string_1, int limit) {
|
||||
return (1);
|
||||
}
|
||||
|
||||
void string_copy_limit (char * string_0, char * string_1, int limit) {
|
||||
char * string_copy_limit (char * string_0, char * string_1, int limit) {
|
||||
int i = 0;
|
||||
|
||||
fatal_failure (string_0 == NULL, "string_copy_limit: Destination string is null pointer.");
|
||||
fatal_failure (string_1 == NULL, "string_copy_limit: Source string is null pointer.");
|
||||
|
||||
if (limit <= 0) {
|
||||
return;
|
||||
return (string_0);
|
||||
}
|
||||
|
||||
for (i = 0; i != limit; ++i) {
|
||||
string_0 [i] = string_1 [i];
|
||||
}
|
||||
|
||||
return (string_0);
|
||||
}
|
||||
|
||||
void string_concatenate_limit (char * string_0, char * string_1, int limit) {
|
||||
char * string_concatenate_limit (char * string_0, char * string_1, int limit) {
|
||||
int i = 0;
|
||||
int length_0 = 0;
|
||||
int length_1 = 0;
|
||||
@ -637,7 +651,7 @@ void string_concatenate_limit (char * string_0, char * string_1, int limit) {
|
||||
fatal_failure (string_1 == NULL, "string_concatenate_limit: Source string is null pointer.");
|
||||
|
||||
if (limit <= 0) {
|
||||
return;
|
||||
return (string_0);
|
||||
}
|
||||
|
||||
length_0 = string_length (string_0);
|
||||
@ -646,6 +660,8 @@ void string_concatenate_limit (char * string_0, char * string_1, int limit) {
|
||||
for (i = 0; (i != length_1) && (i != limit); ++i) {
|
||||
string_0 [length_0 + i] = string_1 [i];
|
||||
}
|
||||
|
||||
return (string_0);
|
||||
}
|
||||
|
||||
int string_split_space (char * string) {
|
||||
@ -767,4 +783,23 @@ char * decode_byte (int byte) {
|
||||
return (decode);
|
||||
}
|
||||
|
||||
void number_to_string (int number, char * string) {
|
||||
int i;
|
||||
|
||||
if (number < 0) {
|
||||
string [0] = '-';
|
||||
++i;
|
||||
number *= -1;
|
||||
}
|
||||
|
||||
for (i = (string [0] == '-'); number != 0; ++i) {
|
||||
string [i] = (char) (number % 10) + '0';
|
||||
number /= 10;
|
||||
}
|
||||
|
||||
string [i] = '\0';
|
||||
|
||||
string_reverse (string);
|
||||
}
|
||||
|
||||
#endif
|
||||
|
16
xtandard.h
16
xtandard.h
@ -104,17 +104,19 @@ extern int character_is_hexadecimal (char character);
|
||||
extern int character_compare_array (char character, char * character_array);
|
||||
|
||||
extern int string_length (char * string);
|
||||
extern void string_reverse (char * string);
|
||||
|
||||
extern void string_delete (char * string, int length);
|
||||
extern char * string_reverse_limit (char * string, int limit);
|
||||
extern char * string_reverse (char * string);
|
||||
|
||||
extern char * string_delete (char * string, int length);
|
||||
|
||||
extern int string_compare (char * string_0, char * string_1);
|
||||
extern void string_copy (char * string_0, char * string_1);
|
||||
extern void string_concatenate (char * string_0, char * string_1);
|
||||
extern char * string_copy (char * string_0, char * string_1);
|
||||
extern char * string_concatenate (char * string_0, char * string_1);
|
||||
|
||||
extern int string_compare_limit (char * string_0, char * string_1, int limit);
|
||||
extern void string_copy_limit (char * string_0, char * string_1, int limit);
|
||||
extern void string_concatenate_limit (char * string_0, char * string_1, int limit);
|
||||
extern char * string_copy_limit (char * string_0, char * string_1, int limit);
|
||||
extern char * string_concatenate_limit (char * string_0, char * string_1, int limit);
|
||||
|
||||
extern int string_split_space (char * string);
|
||||
|
||||
@ -131,4 +133,6 @@ extern void terminal_show_cursor (int show);
|
||||
extern int encode_byte (char * byte);
|
||||
extern char * decode_byte (int byte);
|
||||
|
||||
extern void number_to_string (int number, char * string);
|
||||
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user