未解析的外部符号"int randomNumber"

unresolved external symbol "int randomNumber"

本文关键字:int randomNumber 符号 外部      更新时间:2023-10-16

谁能告诉我如何链接函数@ functions.cpp到main.cpp

注意:我希望两个文件function .cpp和main.cpp使用来自header.h

的相同变量

谢谢!

main.cpp

#include "Header.h"
#include <iostream>
using namespace std;
int multi();
int printOutRanomdNumber();    

int main()
{
cout << "Eneter a number you want to multiply" << endl;
cout << multi() <<endl;
cout << printOutRanomdNumber();
system("pause");
return 0;
}

header.h

#ifndef _HEADER_
#define _HEADER_
#include <iostream>
using namespace std;
extern int randomNumber;
int multi();
int printOutRanomdNumber();    

#endif

functions.cpp

#include "Header.h"
#include <iostream>
using namespace std;
int multi()
{
    int x;
    cin >> x;
    return(x=x*x);
} 
int printOutRanomdNumber()
{
    cout << "Please enter a random number" << endl;
    cin >> randomNumber;
    return (randomNumber);
}

这个错误是因为您没有在任何文件中定义int randomNumber

你需要在一个。cpp文件中定义randomNumber,我猜functions.cpp在这里更有意义。

你也可以在main.cpp中去掉这些行,因为你已经包括了提供原型的Header.h

int multi();
int printOutRanomdNumber();