2016-09-21 18 views
1

私はC++に精通しており、この問題はテキストファイルに書き込むときにもメモリの場所を書き込みます。ここに私のソースコードです。C++ 11ファイルに書き込むこともメモリの場所を書き出しますか?

std::ofstream userprefs; 
srand(time(0)); 
int studentID = rand() % (99999 - 4 * 55) + 5/2; 

std::string studentIDString = std::to_string(studentID); 
userprefs.open("studentInformation.txt", std::ofstream::out | std::ofstream::app); 

std::cout << "The Student ID is sID-"+ studentIDString +" (Copy everything including the sID.\nyou can also find this in the studentInformation.txt file.)"<< std::endl; 

userprefs << std::cout << "the sID is sID-"+ studentIDString << std::endl; 
userprefs.close(); 

テキストファイルを開くと、私はメモリと見なします。

0x804b164 the sID is sID-33921 

これを隠すか、これを生成しないようにするにはどうすればよいですか?そして、それが記憶でないなら、誰かが私に実際に何があるか教えてもらえますか?また、ビルドフラグをC++ 11に設定してG ++を使用していることを指摘したいと思います。

答えて

6

あなたはuserprefs << std::coutを行うはずです。ファイルにstd::coutというアドレスを書き込んでいます。

+0

大丈夫です。好奇心をそそらされてくれてありがとう、ファイルに書き込むときにstd :: coutを使う必要がある時がありますか?できるだけ早く答えとしてマークします。 –

+0

あなたはこれを読むことができます:http://stackoverflow.com/questions/10150468/how-to-redirect-cin-and-cout-to-files – user3286661

関連する問題