私は少しオンラインでリサーチしましたが、Code :: Blocksに表示されるエラーコード-1073741676
の説明は見つかりませんでした。C++のステータス-1073741676
正確なエラーメッセージはProcess terminated with status -1073741676 (0 minute(s), 8 second(s))
です。
この正確なステータスに関するグローバルで一定の説明がありますか、それともコンパイラ、IDEまたはその他の変数で変更されますか?
(私はできる限り最小のような)コード:
main.cppに
int n(0), choix(0);
string dis;
// Nobel* laureats = saisie(n); // Saisie à la main
Nobel* laureats = lecture(n);
cin >> dis;
cout << agemoyen(laureats, n, dis) << endl;
Nobel.h
#ifndef NOBEL_H_INCLUDED
#define NOBEL_H_INCLUDED
#include <string>
struct Nobel
{
std::string nom, discipline;
int annee, age;
std::string pays;
};
int agemoyen(Nobel* NO, int n, std::string dis);
Nobel* lecture(int& n);
#endif // NOBEL_H_INCLUDED
Nobel.cpp
int agemoyen(Nobel* NO, int n, string dis){
int ages(0);
int total(0);
for(int i = 0 ; i < n ; i++){
if(NO[i].discipline == dis){
ages += NO[i].age;
total++;
}
}
ages /= total;
return ages;
}
Nobel* lecture(int& n){
Nobel* laureats;
ifstream fichier("tp7nobel.txt", ios::in);
if (fichier.is_open()) {
fichier >> n;
cout << n << endl;
laureats = new Nobel[n];
for(int i = 0 ; i < n; i++){
fichier >> laureats[i].nom >> laureats[i].discipline >> laureats[i].annee >> laureats[i].age >> laureats[i].pays;
cout << i << ")" << laureats[i]. nom << endl;
}
fichier.close();
}else{
cerr << "Impossible d'ouvrir ce fichier." << endl;
}
return laureats;
}
コードを貼り付けてください:私はあなたが
total
かどうかを確認する必要があると仮定し がそれを使用する前に、ゼロでないEXCEPTION_INT_DIVIDE_BY_ZERO
UPDATEここで最小化、完全化、および検証可能な例に従って@PasserByコードを追加して[mcve] –
にしてください。 – epidoxe