;
#include
ディレクティブの最後にあるのは、コードの問題です。ディレクティブは、ステートメント#include
とは異なり、最後にセミコロンを必要としません (実際に配置するのは間違っています) 。C++
[Warning] extra tokens at end of #include directive [enabled by default]
ディレクティブの後の任意の文字>
がこのエラー/警告を引き起こすようです。
#include<iostream>a //error
これに変更します。
#include <iostream>
#include <time.h>
#include <stdio.h>
#include <stdlib.h>
using namespace std;
class Problem3 {
public:
bool isPrime(long double num) {
srand(time(NULL));
return 0;
}
};
int main(){
cout<<"Hello Main";
}
編集:
リンカーの問題について:
1 つの提案はC++
、型が型間で明示的にキャストされることを期待することです (以上C
)。そのため、 の入力パラメータ タイプであるtime_t
によって返されるtime
変換にキャストを使用します。(そしてもちろん、これはリンカ エラーの問題ではないかもしれません)unsigned int
srand
を使用する代わりに、 を使用してstdlib.h
みて<cstdlib>
ください。名前空間を使用するためです。
それとは別に、私はこのスニペットをここで見ました。役立つ場合は、そのパターンを使用してください。
#include <cstdlib>
#include <iostream>
#include <ctime>
using namespace std;
int main()
{
srand(time(0)); //use current time as seed for random generator
int random_variable = rand();
cout << "Random value on [0 " << RAND_MAX << "]: "
<< random_variable << '\n';
}
Eclipseメソッドが単純なプログラムC ++で解決できなかったのに役立つかどうか、SOチェックにすでに質問があります
time() を使用して srand() を初期化しないでください。.
編集:
今、多くの人がこの種の問題を抱えているようです。Eclipse CDT エラー「Function 'isdigit' could not be resolve . 彼は同じ問題に直面しています。質問者は、質問の編集でこれに対する回避策を提案しました。
その質問から引用:
これはコード分析の問題だと思います。より良い解決策は、コード分析オプションを編集して、「関数を解決できませんでした」をエラーではなく警告にすることです。そうすれば、問題ビューで警告を確認できますが、作業は続行されます。関数が本当に欠落している場合は、コンパイラが教えてくれます! また、「欠落している」関数はすべてシンボリックリンクされたインクルードファイルにあるため、シンボリックリンクをたどるコードアナライザーに問題があるという新しい理論もあります。この理論に関するご意見をお待ちしております。
それが問題を解決することを願っています。