我有3個功能:C++函數調用函數不工作
- 首先函數採用int一個,並打印該多個點。
- 第二個函數需要一個int b並打印該星號。
- 第三個函數需要a和b並調用點函數和星函數。當我在main中調用它時,它返回0而沒有任何輸出。
每個函數都能正常工作 - 爲什麼第三個函數不能工作呢?
編輯:嘗試初始化i = 0,代碼仍編譯結果相同。同樣,函數dots()和stars()在自己調用時都可以正常工作。
void dots(int a){
for(int i; i<a; i++){
cout << ".";
}
}
void stars(int a){
for(int i; i<a; i++){
cout << "*";
}
}
//(not working):
void dotsstars(int a, int b){
dots(a);
stars(b);
}
int main(){
dotsstars(5, 6);
return 0;
}
未初始化的自動變量(即本地變量)不會被隱式初始化。他們的價值將是*不確定*。在C++中使用它們會導致*未定義的行爲*。 –