>>898
> iconv 関数は 1 度に 1 つのマルチバイト文字を変換する

の意味は、一度のiconv()呼び出しで一つのマルチバイト文字しか変換しない
という意味ではなくて、単純に一文字ずつ逐次変換していく、という
内部動作を語ってるの。

関数全体としては、変換できたバイト数は引数経由で取得できるから、
変換が完了したかどうかはそれを見て判断する。で、完了するまで
ループする。という使い方が正しい。