ループの中で一時的に使う値型やstringはループの中で宣言しても大丈夫ですか?

string s = "";

for (int i = 0 ; i < 10000 ; i++)
{
  s = (なんらかのデータ)

  (なんらかの処理)
}

と書くより、

for (int i = 0 ; i < 10000 ; i++)
{
  string s = (なんらかのデータ)

  (なんらかの処理)
}

とシンプルでいいのかなと思いました。