>>773
ありがとうございます。
随分とコードがすっきりしました。

ところで、マニュアルを見る限り std::cin.get(buf, sizeof(buf), ',') の返り値は
std::cin の参照になるみたいですが、EOF に到達すると NULL (0) が返るのは
C++ の規格で決められているのでしょうか?