mirror of
https://github.com/cc65/cc65.git
synced 2025-01-26 17:36:57 +00:00
New functions SB_ToLower and SB_ToUpper.
git-svn-id: svn://svn.cc65.org/cc65/trunk@3821 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
parent
79fdf9e7c6
commit
e917645145
@ -6,8 +6,8 @@
|
||||
/* */
|
||||
/* */
|
||||
/* */
|
||||
/* (C) 2001-2004 Ullrich von Bassewitz */
|
||||
/* Römerstrasse 52 */
|
||||
/* (C) 2001-2008 Ullrich von Bassewitz */
|
||||
/* Roemerstrasse 52 */
|
||||
/* D-70794 Filderstadt */
|
||||
/* EMail: uz@cc65.org */
|
||||
/* */
|
||||
@ -34,8 +34,10 @@
|
||||
|
||||
|
||||
#include <string.h>
|
||||
#include <ctype.h>
|
||||
|
||||
/* common */
|
||||
#include "chartype.h"
|
||||
#include "strbuf.h"
|
||||
#include "va_copy.h"
|
||||
#include "xmalloc.h"
|
||||
@ -269,7 +271,7 @@ void SB_Slice (StrBuf* Target, const StrBuf* Source, unsigned Start, unsigned Le
|
||||
/* Target will be empty */
|
||||
SB_Clear (Target);
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (Start + Len > Source->Len) {
|
||||
Len = Source->Len - Start;
|
||||
}
|
||||
@ -305,6 +307,34 @@ void SB_Move (StrBuf* Target, StrBuf* Source)
|
||||
|
||||
|
||||
|
||||
void SB_ToLower (StrBuf* S)
|
||||
/* Convert all characters in S to lower case */
|
||||
{
|
||||
unsigned I;
|
||||
char* B = S->Buf;
|
||||
for (I = 0; I < S->Len; ++I, ++B) {
|
||||
if (IsUpper (*B)) {
|
||||
*B = tolower (*B);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
void SB_ToUpper (StrBuf* S)
|
||||
/* Convert all characters in S to upper case */
|
||||
{
|
||||
unsigned I;
|
||||
char* B = S->Buf;
|
||||
for (I = 0; I < S->Len; ++I, ++B) {
|
||||
if (IsLower (*B)) {
|
||||
*B = toupper (*B);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
int SB_Compare (const StrBuf* S1, const StrBuf* S2)
|
||||
/* Do a lexical compare of S1 and S2. See strcmp for result codes. */
|
||||
{
|
||||
|
@ -6,8 +6,8 @@
|
||||
/* */
|
||||
/* */
|
||||
/* */
|
||||
/* (C) 2001-2004 Ullrich von Bassewitz */
|
||||
/* Römerstrasse 52 */
|
||||
/* (C) 2001-2008 Ullrich von Bassewitz */
|
||||
/* Roemerstrasse 52 */
|
||||
/* D-70794 Filderstadt */
|
||||
/* EMail: uz@cc65.org */
|
||||
/* */
|
||||
@ -60,7 +60,7 @@ struct StrBuf {
|
||||
unsigned Len; /* Length of the string */
|
||||
unsigned Index; /* Used for reading (Get and friends) */
|
||||
char* Buf; /* Pointer to buffer */
|
||||
};
|
||||
};
|
||||
|
||||
/* An empty string buf */
|
||||
extern const StrBuf EmptyStrBuf;
|
||||
@ -349,6 +349,12 @@ void SB_Move (StrBuf* Target, StrBuf* Source);
|
||||
* contents of Target, and Source will be empty after the call.
|
||||
*/
|
||||
|
||||
void SB_ToLower (StrBuf* S);
|
||||
/* Convert all characters in S to lower case */
|
||||
|
||||
void SB_ToUpper (StrBuf* S);
|
||||
/* Convert all characters in S to upper case */
|
||||
|
||||
int SB_Compare (const StrBuf* S1, const StrBuf* S2);
|
||||
/* Do a lexical compare of S1 and S2. See strcmp for result codes. */
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user