mirror of
https://github.com/avrdudes/avrdude.git
synced 2026-09-22 09:06:23 +03:00
Add string upper/lowercase conversions to str_util.c
This commit is contained in:
@@ -1220,6 +1220,10 @@ int str_caseends(const char *str, const char *ends);
|
||||
int str_caseeq(const char *str1, const char *str2);
|
||||
int str_casematch(const char *pattern, const char *string);
|
||||
char *str_sprintf(const char *fmt, ...);
|
||||
char *str_lc(char *s);
|
||||
char *str_uc(char *s);
|
||||
char *str_lcfirst(char *s);
|
||||
char *str_ucfirst(char *s);
|
||||
bool is_bigendian();
|
||||
void change_endian(void *p, int size);
|
||||
int memall(const void *p, char c, size_t n);
|
||||
|
||||
@@ -224,6 +224,33 @@ char *str_sprintf(const char *fmt, ...) {
|
||||
}
|
||||
|
||||
|
||||
// Changes string to be all lowercase and returns original pointer
|
||||
char *str_lc(char *s) {
|
||||
for(char *t = s; *t; t++)
|
||||
*t = tolower(*t & 0xff);
|
||||
return s;
|
||||
}
|
||||
|
||||
// Changes string to be all uppercase and returns original pointer
|
||||
char *str_uc(char *s) {
|
||||
for(char *t = s; *t; t++)
|
||||
*t = toupper(*t & 0xff);
|
||||
return s;
|
||||
}
|
||||
|
||||
// Changes first character in a string to be lowercase and returns original pointer
|
||||
char *str_lcfirst(char *s) {
|
||||
*s = tolower(*s & 0xff);
|
||||
return s;
|
||||
}
|
||||
|
||||
// Changes first character in a string to be uppercase and returns original pointer
|
||||
char *str_ucfirst(char *s) {
|
||||
*s = toupper(*s & 0xff);
|
||||
return s;
|
||||
}
|
||||
|
||||
|
||||
bool is_bigendian() {
|
||||
union {char a[2]; int16_t i;} u = {.i = 1};
|
||||
return u.a[1] == 1;
|
||||
|
||||
Reference in New Issue
Block a user