 文字列の文字を全部小文字に変換する関数に_strlwr関数というのがあります。
文字列の文字を全部小文字に変換する関数に_strlwr関数というのがあります。
これの、セキュリティ強化バージョンとしてVC2005では_strlwr_s関数が用意されました。
同じように、_strupr関数は文字列の文字を大文字に変換しますが、新バージョンの
_strupr_s関数が用意されました。
string.hをインクルードする必要があります。
errno_t _strlwr_s( char *str, size_t sizeInBytes ); errno_t _strupr_s( char *str, size_t sizeInBytes );strは変換対象文字列です。
sizeInBytesは、バッファサイズです。
正常終了したときは0が返されます。そうでないときは、0以外が返されます。
では、簡単なサンプルプログラムを見てみましょう。
/* strlwr01.c */
#include <stdio.h>
#include <string.h>
int main()
{
	char str[] = "適当な文字列を入力してください(半角英字)\n", strinput[256];
	printf_s(str);
	gets_s(strinput, sizeof(strinput) - 1);
	_strlwr_s(strinput, sizeof(strinput));
	printf_s("今の入力を小文字にすると「%s」\n", strinput);
	_strupr_s(strinput, sizeof(strinput));
	printf_s("これを大文字にすると「%s」\n", strinput);
}
gets_s関数の第2引数はsizeof(strinput) - 1なのに、_strlwr_s,_strupr_s関数ではsizeof(strinput)になっている点に注意してください。実行結果は次のようになります。
 
Update Sep/01/2007 By Y.Kumei