なぜに
cout << strBuf.c_str() << endl;
なの?