[解決済み] 警告 C4700: 初期化されていないローカル変数 [閉鎖].
2022-02-12 05:59:08
質問
コンパイルすると、 "warning C4700: uninitialized local variable 'count' used" と表示されます。 なぜこのようなことを言うのかわかりませんし、ここに来たわけでもないので、誰かが私の宿題をやってくれるでしょう。 私は、このエラーが関数定義ReadStudentDataまたはMainに関係していることを知っている、この1つのヘルプを探しています。
感謝
#include<iostream>
#include<fstream>
#include<string>
using namespace std;
struct StudentType
{string studentName;
int testScore;//Between 0 and 100
char grade;
}student[20];
void PrintNameHeader(ostream& out);
bool OpenInputFile(ifstream& inFile, string& infilename ); //OPEN input file
void Pause();// Pause
void ReadStudentData(ifstream& infile, StudentType student[], int& );// Read student infp including first and last name and test score
void AssignGrades(StudentType student[], int);//assign grades to each student
int HighestScore(const StudentType student[], int );//Get the highest scores
void PrintNamesWithHighestScore(const StudentType student[], int);//Print name with highest Scores
void DisplayAllStudents(const StudentType student[], int);//Display all students
void GetLowHighRangeValues(int& , int&);//for example a student types 50 100 , it will get all students within that range
void DisplayStudentsInRange(const StudentType student[], int, int, int);// display students in that range
void SortStudentsByName(StudentType student[], int);// sort students by name
void SortStudentsByScore(StudentType student[], int);// sort students by test score highest to lowest
const int NUM_STUDENTS = 20;
int main()
{
ifstream infile;
string inFilename;
int count = 0;
StudentType student[NUM_STUDENTS];
int numStudents;
PrintNameHeader(cout);
OpenInputFile(infile,inFilename);
ReadStudentData(infile, student, numStudents);
AssignGrades(student, numStudents);
return 0;
}
//Function definitions
void PrintNameHeader(ostream& out)
{
//Display name header on screen
cout << "name" << endl;
}
bool OpenInputFile(ifstream& inFile, string& infilename)
{
cout << "Enter the name of the .txt file that you want to open for input.\n";
cout << "Do not put spaces in the file name ";
cin >> infilename;
cout << endl;
inFile.open(infilename.c_str());
if (inFile.fail())
{
cout << "Sorry, the input file " << infilename <<" was not found"<< endl;\
return false;
}
cout << "Input file " << infilename << " is open for reading.\n\n";
return true;
}
void Pause()
{
cout << endl;
cin.ignore(80, '\n');
cout<<"Please hit the enter key to continue...\n";
cin.get();
}
void ReadStudentData(ifstream& infile, StudentType student[], int& numstudents)
{
string firstName,
LastName,
testScore;
int count = 0;
if( infile)
for (int count; count < NUM_STUDENTS; count++)
{
cin >> firstName[count] >> LastName[count] >> testScore[count];
student[count].studentName = firstName + ", " + LastName;
}
numstudents = count;
cout << numstudents << endl;
}
void AssignGrades(StudentType student[], int numstudents)
{
int i;
for(i=0;i< NUM_STUDENTS;i++)
switch((int)(student[i].testScore/10))
{case 10:
case 9: student[i].grade='A';
break;
case 8: student[i].grade='B';
break;
case 7: student[i].grade='C';
break;
case 6: student[i].grade='D';
break;
default: student[i].grade='F';
break;
}
}
int HighestScore(const StudentType student[], int numstudents)
{
int max=0,i;
for(i=1;i<numstudents;i++)
{
if(student[i].testScore>student[max].testScore)
max=i;
}
return max;
}
void PrintNamesWithHighestScore(const StudentType student[], int numstudents)
{
}
void DisplayAllStudents(const StudentType student[], int numstudents)
{
}
void GetLowHighRangeValues(int& lowRange, int& highRange)
{
}
void DisplayStudentsInRange(const StudentType student[], int numStudents, int lownum, int highNum)
{
}
void SortStudentsByName(StudentType student[], int numStudents)
{
}
void SortStudentsByScore(StudentType student[], int numstudents)
{
}
解決方法は?
これを参照しています。
for (int count; count < NUM_STUDENTS; count++)
// ^^^^^^^^^
を初期化する必要がある場合があります。
count
に、おそらくは
0
:
for (int count = 0; count < NUM_STUDENTS; count++)
という意味なのか、それとも同じ
count
を外側のブロックで宣言しています。
for (; count < NUM_STUDENTS; count++)
関連
-
[解決済み】構造体のベクター初期化について
-
[解決済み】C++ - 解放されるポインタが割り当てられていないエラー
-
[解決済み] error: 'if' の前に unqualified-id を期待した。
-
[解決済み] 式はクラス型を持つ必要があります。
-
[解決済み】クラステンプレートの使用にはテンプレート引数リストが必要です
-
[解決済み】ファイルから整数を読み込んで配列に格納する C++ 【クローズド
-
[解決済み】 while(cin) と while(cin >> num) の違いは何ですか?)
-
[解決済み] to_string は std のメンバーではない、と g++ が言っている (mingw)
-
[解決済み】Eclipse IDEでC++エラー「nullptrはこのスコープで宣言されていません」が発生する件
-
[解決済み】ローカル変数のメモリはスコープ外からアクセスできる?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】 unsigned int vs. size_t
-
[解決済み】C++のGetlineの問題(オーバーロードされた関数 "getline "のインスタンスがない
-
[解決済み】文字列関数で'char const*'のインスタンスを投げた後に呼び出されるterminate [閉店].
-
[解決済み】IntelliSense:オブジェクトに、メンバー関数と互換性のない型修飾子がある
-
[解決済み】ファイルから整数を読み込んで配列に格納する C++ 【クローズド
-
[解決済み] [Solved] インクルードファイルが開けません。'stdio.h' - Visual Studio Community 2017 - C++ Error
-
[解決済み】CMakeエラー at CMakeLists.txt:30 (project)。CMAKE_C_COMPILER が見つかりませんでした。
-
[解決済み】演算子のオーバーロード C++; <<操作のパラメータが多すぎる
-
[解決済み] 配列のベクトルを扱う正しい方法
-
[解決済み】エラー。引数リストに一致するコンストラクタのインスタンスがない