C++には2つの質問があります。静的変数はグローバル変数ですか?
まず、グローバル変数は静的変数と同じですか?静的変数の特質は何ですか?
は第二に、私は実際に私は静的変数を使用しない場合は、プロジェクトをコーディングして、私のコードは私に次のエラーが送ら:
ランタイムチェックの失敗#2 - 変数の周りスタック「szDataを」でした が壊れています。私はそれを削除し、すべてがOKですので
このエラーは、原因sprintfのように見える。..
bool CreateFile(MyCards** ppCards)
{
fstream ficCar;
static char szData[31];
ficEmployes.open("./my_cards.dat", ios::in | ios::binary);
if (!ficCar.fail())
{
ficCar.close();
return false;
}
else
{
sort(ppCards, ppCards + 26271, OrderedCards);
ppCards.open("./nom_cartes.index", ios::out | ios::binary);
if (ficCar.fail())
{
throw "Error";
}
else
{
for (int indice = 0; indice < 10123; indice++)
{
sprintf(szData, "%-20s %010d \n",
ppCards[indice]->GetNom(),
ppCards[indice]->GetPosition());
ficCar.write(szEnregistrement, 30);
}
ficCar.close();
return true;
}
}
}
誰もが私を助けることができますか?ありがとう!
'ficCar'を閉じて失敗しなかった場合は、コード – user463035818
に「静的」という文字列は表示されません。失敗した場合にのみ使用し続けます。 – user463035818
おっと!私は間違いをします。私はSOのコードを編集しました。それは静的なchar szDataです。 – SurveyVisual