Changing Case of char Array

For the ASCII alphas, bit 5 is the difference in case.

1 loop the length of the buffer with break on NULL, if the ASCII is not alpha-only then with a range check ( data & 0xDF >= 'A' ) && ( data & 0xDF <= 'Z' ) and either set or clear bit 5.... make the state an arg and 1 function could do both change to upper or lower case.

And you don't need string.h to do that.