C/C++ ポインタ入門 > 文字列関数 > maxchar
Nobuhide Tsuda
Nov-2013
最大文字を返す:char my_maxchar(const char *str)
char my_maxchar(const char *str)
{
char max = '\0';
char ch;
while( (ch = *str++) != '\0' ) {
if( ch > max )
max = ch;
}
return max;
}
解説:
- 最大値を覚えておく変数 max を用意し、ヌル文字で初期化しておきます。
- while 文で終端文字を見つけるまで str を進めます。
- このとき ch に文字を代入しておきます。
- ch と max を比べ、ch が大きければ max に ch を代入します。
- ループを抜けたら、max を値として返します。
- str が空文字列を指している場合、ループを1回も回らないので、max は初期値の '\0' のままで、それを値として返します。
前:
| 次: