uppercase(1)
This commit is contained in:
parent
3fdf5b06cd
commit
0194362686
6
.gitignore
vendored
6
.gitignore
vendored
@ -1,6 +1,12 @@
|
|||||||
dist/
|
dist/
|
||||||
echo/echo
|
echo/echo
|
||||||
|
lowercase/lowercase
|
||||||
|
lowercase/uppercase
|
||||||
nonzero/nonzero
|
nonzero/nonzero
|
||||||
roll/roll
|
roll/roll
|
||||||
rot13/rot13
|
rot13/rot13
|
||||||
|
simexec/simexec
|
||||||
str/str
|
str/str
|
||||||
|
streq/streq
|
||||||
|
sysexits/sysexits
|
||||||
|
sysexits/sysexits.h
|
||||||
|
22
dist/Makefile
vendored
22
dist/Makefile
vendored
@ -1,5 +1,6 @@
|
|||||||
.PHONY: dirs
|
.PHONY: dirs
|
||||||
dirs: bin share/man/man1
|
dirs: bin share/man/man1
|
||||||
|
|
||||||
bin:
|
bin:
|
||||||
mkdir -p bin
|
mkdir -p bin
|
||||||
share/man/man1:
|
share/man/man1:
|
||||||
@ -38,6 +39,20 @@ bin/nonzero: bin ../nonzero/nonzero
|
|||||||
../nonzero/nonzero:
|
../nonzero/nonzero:
|
||||||
$(MAKE) -C ../nonzero sane
|
$(MAKE) -C ../nonzero sane
|
||||||
|
|
||||||
|
.PHONY: simexec
|
||||||
|
simexec: bin/simexec
|
||||||
|
bin/simexec: bin ../simexec/simexec
|
||||||
|
cp ../simexec/simexec bin/simexec
|
||||||
|
../simexec/simexec:
|
||||||
|
$(MAKE) -C ../simexec sane
|
||||||
|
|
||||||
|
.PHONY: sleep
|
||||||
|
sleep: bin/sleep
|
||||||
|
bin/sleep: bin ../sleep/sleep
|
||||||
|
cp ../sleep/sleep bin/sleep
|
||||||
|
../sleep/sleep:
|
||||||
|
$(MAKE) -C ../sleep sane
|
||||||
|
|
||||||
.PHONY: str
|
.PHONY: str
|
||||||
str: bin/str
|
str: bin/str
|
||||||
bin/str: bin ../str/str
|
bin/str: bin ../str/str
|
||||||
@ -52,7 +67,12 @@ bin/streq: bin ../streq/streq
|
|||||||
../streq/streq:
|
../streq/streq:
|
||||||
$(MAKE) -C ../streq sane
|
$(MAKE) -C ../streq sane
|
||||||
|
|
||||||
|
.PHONY: uppercase
|
||||||
|
uppercase: bin/uppercase ../lowercase/lowercase
|
||||||
|
bin/uppercase: bin ../lowercase/uppercase
|
||||||
|
cp ../lowercase/uppercase bin/
|
||||||
|
|
||||||
.PHONY: volume
|
.PHONY: volume
|
||||||
volume: bin/volume
|
volume: bin/volume str
|
||||||
bin/volume: bin ../volume/volume
|
bin/volume: bin ../volume/volume
|
||||||
cp ../volume/volume* bin/
|
cp ../volume/volume* bin/
|
||||||
|
@ -1,9 +1,12 @@
|
|||||||
all: lowercase
|
all: lowercase uppercase
|
||||||
clean:
|
clean:
|
||||||
rm -f lowercase
|
rm -f lowercase uppercase
|
||||||
sane: lowercase
|
sane: all
|
||||||
|
|
||||||
lowercase: ../ascii/ascii.h lowercase.c
|
lowercase: lowercase.c
|
||||||
$(CC) -I../ascii/ -o lowercase lowercase.c
|
$(CC) -DLOWERCASE -o lowercase lowercase.c
|
||||||
|
|
||||||
|
uppercase: lowercase.c
|
||||||
|
$(CC) -DUPPERCASE -o uppercase lowercase.c
|
||||||
|
|
||||||
.PHONY: all clean sane
|
.PHONY: all clean sane
|
||||||
|
@ -1,4 +1,3 @@
|
|||||||
#include <ascii.h> /* ASCII_MAX_VALUE */
|
|
||||||
#include <stdio.h> /* fprintf(3), getc(3), putc(3), stderr, stdin, stdout */
|
#include <stdio.h> /* fprintf(3), getc(3), putc(3), stderr, stdin, stdout */
|
||||||
#include <stdlib.h> /* exit(3) */
|
#include <stdlib.h> /* exit(3) */
|
||||||
#include <sysexits.h> /* EX_OK, EX_USAGE, EX_SOFTWARE */
|
#include <sysexits.h> /* EX_OK, EX_USAGE, EX_SOFTWARE */
|
||||||
@ -6,13 +5,16 @@
|
|||||||
|
|
||||||
/* Enable Unicode support using official Unicode library. */
|
/* Enable Unicode support using official Unicode library. */
|
||||||
#ifdef USE_ICU
|
#ifdef USE_ICU
|
||||||
# include <unicode/uchar.h> /* UCHAR_MAX_VALUE, u_tolower(3) */
|
# include <unicode/uchar.h>
|
||||||
|
/* UCHAR_MAX_VALUE, u_tolower(3), u_toupper(3) */
|
||||||
# include <unicode/umachine.h> /* UChar32 */
|
# include <unicode/umachine.h> /* UChar32 */
|
||||||
# include <unicode/ustdio.h> /* u_fgetc(3) */
|
# include <unicode/ustdio.h> /* u_fgetc(3) */
|
||||||
#else
|
#else
|
||||||
# include <ctype.h> /* tolower(3) */
|
# include <ctype.h> /* tolower(3), toupper(3) */
|
||||||
#endif /* USE_ICU */
|
#endif /* USE_ICU */
|
||||||
|
|
||||||
|
#define ASCII_MAX_VALUE 0x7F
|
||||||
|
|
||||||
int main(int argc, char *argv[]){
|
int main(int argc, char *argv[]){
|
||||||
#ifdef USE_ICU
|
#ifdef USE_ICU
|
||||||
UChar32
|
UChar32
|
||||||
@ -30,14 +32,22 @@ int main(int argc, char *argv[]){
|
|||||||
#ifdef USE_ICU
|
#ifdef USE_ICU
|
||||||
while((c = u_fgetc(stdin)) != U_EOF){
|
while((c = u_fgetc(stdin)) != U_EOF){
|
||||||
if(c <= UCHAR_MAX_VALUE && c >= 0)
|
if(c <= UCHAR_MAX_VALUE && c >= 0)
|
||||||
|
# ifdef LOWERCASE
|
||||||
c = u_tolower(c);
|
c = u_tolower(c);
|
||||||
|
# else
|
||||||
|
c = u_toupper(c);
|
||||||
|
# endif /* ifdef LOWERCASE */
|
||||||
u_fputc(c, stdout);
|
u_fputc(c, stdout);
|
||||||
#else
|
#else
|
||||||
while((c = getc(stdin)) != EOF){
|
while((c = getc(stdin)) != EOF){
|
||||||
if(c <= ASCII_MAX_VALUE && c >= 0)
|
if(c <= ASCII_MAX_VALUE && c >= 0)
|
||||||
|
# ifdef LOWERCASE
|
||||||
c = tolower(c);
|
c = tolower(c);
|
||||||
|
# else
|
||||||
|
c = toupper(c);
|
||||||
|
# endif /* ifdef LOWERCASE */
|
||||||
putc(c, stdout);
|
putc(c, stdout);
|
||||||
#endif
|
#endif /* ifdef USE_ICU */
|
||||||
}
|
}
|
||||||
return EX_OK;
|
return EX_OK;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user