2017-05-17 11 views
-1

恐らく危険です。言う、私たちは正確にそれを行うプログラムを作る。ファイルを無限ループで出力する(故意に)

using namespace std; 

int main() 
{ 
    int n=1; 
    ofstream outfile("hi.txt"); 
    cout << "Press any key to execute program."; 
    getch(); 
    while (n>0) 
    { 
     outfile << "A"; 
    } 
    return 0; 
} 

無人で実行している場合、これはどのように危険なことがありますか?

+0

ファイルシステムのサイズ制限に達すると、最初に何が起きたかに応じて、ハードディスクがいっぱいになるかクラッシュします。ここをクリックhttps://en.wikipedia.org/wiki/Comparison_of_file_systems#Limits –

+0

プログラミングとは何の関係もない質問のようです... – gabry

+0

@FedericoklezCulloca:コメント欄に答えないでください –

答えて

0

あなたの定義によると、は危険です

最終的には、空き領域がなくなった場合にはoutfile<<"A"が黙って失敗します(成功していないかどうかはチェックされません)。プログラムはCPUコアの100%を消費します。それはあなたを刑務所に送り込んだり、誰かを殺したりすることはありません。あなたのコンピュータが適切に建設されていれば、火事も起きることさえありません。しかし、あなたはがこれを行うにはを望んでいません。

+2

'n'はコード内で変更されていません –

+0

@FedericoklezCulloca:Hah –

+0

は_operator << _が書き込みに失敗したときに例外をスローしませんか? – nefas

関連する問題