Tag: 日食

自动Cunit testing

我有一个用MinGW,Eclipse C项目编译的C库。 库包含许多模块,每个模块都可以进行测试。 什么是最好的方法(使用MACROS或其他东西)如何为这个库编写测试,在Eclipse / CDT IDE中编译运行它? 编辑:我看到有些人使用 #ifdef TEST int main(void) { …TEST LOGIC… } #endif 但不知道如何将其插入Eclipse。

“多重定义”,“此处首次定义”错误

我有3个项目: 服务器 , 客户端和共享 。 在Commons中创建头和源对不会导致任何问题,我可以从服务器和客户端免费访问这些function。 但是,由于某些原因,在服务器或客户端项目中创建其他源/头文件总是会导致multiple definition of (…)并且first defined here错误。 例: commands.h (在Client项目的根目录中) #ifndef COMMANDS_H_ #define COMMANDS_H_ #include “commands.c” void f123(); #endif /* COMMANDS_H_ */ commands.c (在Client项目的根目录中) void f123(){ } main.c (在Client项目的根目录中) #include “commands.h” int main(int argc, char** argv){ } 错误: make: *** [Client] Error 1 Client first defined here Client multiple definition […]

C程序以错误的顺序输出Eclipse

我已经在我的Windows机器上设置了Eclipse进行c编程,我已经成功运行了一个“hello,world”程序。 但是,当我尝试请求用户输入并运行程序时,Eclipse上的控制台显示顺序错误。 这就是我所拥有的 #include int main(void){ char letter; printf(“Please enter a letter:\n”); scanf(” %c, &letter); printf(“The letter you have selected is: %c”, letter); return 0; } 这个程序构建得很好,它在Eclipse之外运行得很好。 但是当我在Eclipse中运行它时,我获得了输出: E <— (this is my user input) Please enter a letter: The letter you have selected is: E 我不确定为什么输出执行顺序错误,所以任何帮助都会非常感激! 谢谢。

Eclipse中gcc编译器的默认标志

我希望我的所有C程序默认使用选项-Wall -pedantic -ansi进行编译。 有没有办法让Eclipse在所有项目中默认将这些标志添加到编译器命令中?

是否可以在eclipse中导入/运行目标文件?

我们的教授提供了我无法完成的先前作业的目标文件。 完成/测试当前分配需要先前的分配。 以某种方式我可以将它们导入到eclipse中或以某种方式使我的项目与这些目标文件一起工作吗?

程序g ++在路径中找不到

我正在使用Eclipse进行C项目。 我通过转到New-> C project-> Executable-> Empty Project,Linux gcc toolchain创建了一个新项目。 当我添加一个新的.c文件时,我得到“程序’g ++’在路径中找不到”。 我怎么摆脱这个? 我甚至没有使用C ++。

如何在Eclipse中默认停止GDB执行“break main”?

我正在使用Eclipse和MinGW开发一个C项目。 运行此项目的调试版本时,gdb始终在输入main()中断。 我可以看出为什么这可能有用,但对于我目前的项目,我不希望这种情况发生。 我读过有一个命令 (gdb) break main 从命令行运行时将完成相同的行为。 目前我没有.gdbinit文件。 目前,gdb在从命令行运行时不会停止进入main,但是从Eclipse运行时它会执行。 如何在Eclipse中默认进入main时使GDB停止运行?

如何让Eclipse在#ifdef … #endif中编写索引代码

我正在使用eclipse来处理一些c代码,它不是像这样在条件编译块中索引代码: #ifdef USE_FEATURE_A int feature_a(…) { some = code(here); } #endif 如何让eclipse索引feature_a函数?

如何将Icon添加到使用Eclipse Galileo C和MinGW构建的应用程序中?

我已经阅读了很多关于如何向使用Visual Studio构建的应用程序添加图标的内容,但我不知道如何使用Eclipse Galileo / C / MinGW执行此操作。 任何人都可以写一个描述,或给我一个描述的链接?

为什么gdb将sqrt(3)评估为0?

由Wolfram Alpha估算的3的平方根: 1.7320508075688772935274463415058723669428052538103806280558… 当我在C中执行sqrt(3)时,它的计算结果为0.为什么? 编辑4 :这是你如何在GDB中重现这个问题。 创建test.c如下: #include #include int main() { printf(“sqrt(3): %f\n”, sqrt(3)); return 0; } 编译: gcc -O0 -g -Wall -pedantic -ansi -lm -o test test.c 运行调试器: gdb test 在控制台输入: (gdb) break test.c:6 Breakpoint 1 at 0x400578: file test.c, line 6. (gdb) r Starting program: /home/pdedecker/Desktop/test Breakpoint 1, main () at test.c:6 […]