当我尝试编译下面的代码时,我的Eclipse CDT一直在抱怨"make:***没有规则来制作目标":
#include <iostream>
using namespace std;
int main() {
cout << "Hello World!!!" << endl; // prints Hello World!!!
return 0;
}
Run Code Online (Sandbox Code Playgroud)
谁知道如何解决这个问题?我已经阅读了类似标题的帖子: make:***没有规则可以使目标"全部".停止.Eclipse错误 但这些答案都没有帮助......
非常感谢!
我在代码中使用模板,而LNK2019始终存在错误.这是我的代码的一部分:
Method.h
template<typename type>
void Method(Model<type>* sys);
Run Code Online (Sandbox Code Playgroud)
Method.cpp
template<typename type>
void Method(Model<type>* sys){ blablabla;}
Run Code Online (Sandbox Code Playgroud)
Model.h
template<typename type>
class Model{ blablabla;}
class Model1:public Model<double>{ blablabla;}
Run Code Online (Sandbox Code Playgroud)
Main.cpp的
Model<double> *sys=new Model1();
Method(sys);
Run Code Online (Sandbox Code Playgroud)
但是,始终显示错误LNK2019:函数_main中引用的未解析的外部符号"void __cdec1 Method(class Model*)".谁知道我哪里错了?非常感谢!
我试图malloc
在初始化另一个动态分配的数组后再次调用,但我的程序无法运行(尽管它可以通过编译).我的部分代码如下.
table = (Node **)malloc(m * sizeof(Node*));
for(i=0; i<=m; i++)
table[i] = NULL;
table2 = (Node *)malloc(n * sizeof(Node));
Run Code Online (Sandbox Code Playgroud)
错误信息如下:
malloc.c:2372: sysmalloc: Assertion `(old_top == (((mbinptr) (((char *) &((av)
->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_si
ze == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (st
ruct malloc_chunk, fd_nextsize))+((2 *(sizeof(size_t))) - 1)) & ~((2 *(sizeof(size_t
))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long) old_end & pagemask) == 0)'
failed.
Run Code Online (Sandbox Code Playgroud)
最奇怪的是,我发现我的程序在删除上面代码中的第二行和第三行后可以成功运行,其中 …