Commit 6d7773c9 authored by Zygo Blaxell's avatar Zygo Blaxell Committed by Alexandre Julliard

Implemented some CRTDLL string functions.

parent 61afa33b
...@@ -28,6 +28,7 @@ C_SRCS = \ ...@@ -28,6 +28,7 @@ C_SRCS = \
spooler.c \ spooler.c \
spy.c \ spy.c \
stress.c \ stress.c \
string.c \
system.c \ system.c \
tapi32.c \ tapi32.c \
toolhelp.c \ toolhelp.c \
......
/*
* implementation of MSDEVS extensions to string.h
*
* Copyright 1999 Corel Corporation (Albert den Haan)
*/
/* WARNING: The Wine declarations are in tchar.h for now since string.h is
* not available to be altered in most development environments. MSDEVS 5
* declarse these functions in its own "string.h" */
#include "tchar.h"
#include <ctype.h>
#include <assert.h>
char *_strlwr(char *string) {
char *cp;
assert(string != NULL);
for(cp = string; *cp; cp++) {
*cp = tolower(*cp);
}
return string;
}
char *_strrev(char *string) {
char *pcFirst, *pcLast;
assert(string != NULL);
pcFirst = pcLast = string;
/* find the last character of the string
* (i.e. before the assumed nul-character) */
while(*(pcLast + 1)) {
pcLast++;
}
/* if the following ASSERT fails look for a bad (i.e. not nul-terminated)
* string */
assert(pcFirst <= pcLast);
/* reverse the string */
while(pcFirst < pcLast) {
/* swap characters across the middle */
char cTemp = *pcFirst;
*pcFirst = *pcLast;
*pcLast = cTemp;
/* move towards the middle of the string */
pcFirst++;
pcLast--;
}
return string;
}
char *_strupr(char *string) {
char *cp;
assert(string != NULL);
for(cp = string; *cp; cp++) {
*cp = toupper(*cp);
}
return string;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment