2017-02-20 117 views
1

好吧,這是一個不完整的程序的一小塊。該程序讀取輸入文件,進行一些計算並打印到輸出文件,但輸出文件中會出現奇怪的符號。程序打印奇怪的符號輸出文件C++

void printRecord (char name[20], char Id[20], ostream& outfile) 
{ 
outfile << name << Id << endl; 
} 

int main() 
{ 
ofstream outfile; 
ifstream infile; 


char file_nameI[21], file_nameO[21], name[20], Id[8]; 

float hworkgrade, grade1; 
int deductions; 

cout << "Please enter name of input file: "; 
cin >> file_nameI; 
infile.open(file_nameI); 
if (!infile) 
{ 
    cout << "Could not open input file \n"; 
    return 0; 
} 

cout << "Please enter name of output file: "; 
cin >> file_nameO; 
outfile.open(file_nameO); 
if (!outfile) 
{ 
    cout << "Could not open output file \n"; 
    return 0; 
} 

do 
{ 
    infile >> name >> Id; 
    cout<< name << Id; 
    hworkgrade = CalHworkGrade(grade1, infile); 
    printRecord(name, Id, outfile); 
} 
while(!infile.eof()); 

return 0; 
} 

這是在輸出文件

Ф,ью\XаѓФ,ью

+2

這通常是由打印未初始化的變量引起的。 – drescherjm

+0

你是對的。現在我必須弄清楚爲什麼程序不會從輸入文件中提取新信息。謝謝您的幫助! – Morgan

回答

0

程序不會從輸入文件中提取信息。如果我將變量設置爲hello,它們不會被新信息覆蓋,程序打印問候

char file_nameI[21], file_nameO[21], name[20] = hello , Id[8] = hello;