[英]C++ Function Problem
我已經反復研究了這個問題,並不斷出現此錯誤:'ReadDials':函數不使用0個參數,我能否至少在正確的方向上取得一點?
#include <iostream>
using namespace std;
//declaring function
int ReadDials(int);
int main()
{
//declaring each character of the phone number
char num1, num2, num3, num4, num5, num6, num7, num8;
bool quit = false;
int code;
while(quit != true || quit != true)
ReadDials(code);
if (code == -5)
cout << "I love football!" << endl;
else
return 0;
}
int ReadDials()
{
//getting number from user
cout << "Enter a phone number (Q to quit): ";
cin >> num1;
if (num1 == 'q' || num1 == 'Q')
{
code = -5;
return code;
}
cin >> num2 >> num3 >> num4 >> num5 >> num6 >> num7 >> num8;
}
實際上,ReadDials帶有9個參數,因此您不能在沒有傳遞anith的情況下調用ReadDials()。 然后,據我所知,函數“業力”似乎返回用戶“撥號”的數字,但由於參數是通過值傳遞的,因此此意圖很可能會失敗 ,因此函數更改不會傳播到外部。 為此,您可能最好將char *傳遞給函數char *,或者為什么不將整數讀取為字符串呢?
您將ReadDials
聲明為具有9個參數的函數:
int ReadDials(char, char, char, char, char, char, char, char, int);
然后將其稱為不提供任何內容:
while(quit != true || quit != true)
ReadDials();
編譯器抱怨。 令人驚訝嗎?
readDials
被聲明為帶有多個參數的函數,因此在不提供相應參數的情況下調用readDials
是一個錯誤。
您必須提供參數:
const int result(ReadDials(num1, num2, num3, num4, num5, num6, num7, num8, code));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.