私は C++ の初心者で、最大公約数を見つけるプログラムを作成しようとしています。主に私は持っています:
#include <iostream>
#include <cstdlib>
#include "longgcd.cpp"
int main(int argc, char* argv[]){
long gcd(long m, long n);
long m,n,g;
m=atol(argv[1]);
n=atol(argv[2]);
g=gcd(m,n);
std::cout<<"gcd("<<m<<","<<n<<")="<<g<<std::endl;
return 0;
}
次に、サブ関数を longgcd.cpp という別のファイルに入れます
#include <iostream>
#include <cstdlib>
long gcd( long m, long n){
long r;
while(n !=0){
r=m%n;
m=n;
n=r;
}
return m;
}
どういうわけか longgcd.cpp がコンパイルできません。エラーが発生します:
/usr/lib/gcc/i486-linux-gnu/4.3.2/../../../../lib/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
collect2: ld returned 1 exit status
make: *** [longgcd] Error 1
どういうわけか、このプログラムを実行して動作させるのに苦労しています。何が問題なのかわかりません。助けや提案をありがとう。