回答編集履歴

1 脱字

huyuhumi_fg

huyuhumi_fg score 67

2015/11/05 04:51  投稿

![イメージ説明](44703e226bc6da1b237c2ccf48d48667.jpeg)
tellg関数の戻り値は operator<<でサポートされた型ではありません.明示的にint型にキャストする必要があります.
```C++
cout << static_cast<int>( thisfile.tellg() ) << std::endl;
std::cout << static_cast<int>( thisfile.tellg() ) << std::endl;
```
ちなみに,std::endlは改行とフラッシュを同時に行うものです.多用すると速度低下につながりますので,改行したいだけなら"\n"をつかい,<< で連結させるのがよいでしょう.
std::endlは最後につければよいです.明示的なフラッシュが必要な場合はほとんどありません.

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る