-1
我不知道爲什麼我得到這個錯誤,當我嘗試運行此代碼...當我通過我的結構的參考時,這是什麼問題...未定義的參考錯誤,當我通過參考的結構
這是錯誤:
undefined reference to citire(type)
代碼:
#include <iostream>
using namespace std;
struct type {
int x[500] = {0};
int y[500] = {0};
int lx = 0;
int ly = 0;
int aparitii[10000] = {0};
};
void citire(type s);
bool estePrim(type s);
int sumaCfr(type s);
void createY(type s);
void printY(type s);
int main()
{
type s;
citire(s);
cout<<"X LENGTH = "<<s.lx<<endl;
return 0;
}
void citire(type &s)
{
int i = -1;
cin>>s.x[++i];
while (s.x[i] != 0) {
cout<<"Insert " << i + 1<< " value"<<endl;
cin>>s.x[++i];
}
s.lx = i;
}
你的原型呢不符合你的定義:'void citire(type s)'vs'void citire(type&s)'。您的編譯器應該已經警告過您 - 您是否忘記啓用警告,或者您是否忽略它們? –
@PaulR編譯器不應該警告,C++已經重載了函數。程序員的意圖可能是調用另一個單元中定義的'citire(type)' –
@MM:[如果你有'-Wmissing-declarations',gcc會警告你丟失的原型](http://coliru.stacked-crooked的.com /一個/ 3b8573173e9c477d)。 –