Eclipse CDT C/C++ 配置小结

 因为找工作,复习JAVA的同时不得不复习一下C/C++,数据结构什么的,得有个编译运行C/C++程序的IDE,早就知道CDT的大名,前几天寻找网上教程给安装了,呵呵,在熟悉的Eclipse界面下编译运行C/C++,感觉真是惬意呀。
      废话少说,直奔主题吧。
      一.必备软件
      1. JDK
      包含Eclipse安装的必备JRE。我的版本是j2sdk1.4.2_04.环境配置省略...
      2. Eclipse
      主题框架软件,软件界神来之物,官网 http://www.eclipse.org,下载地址 http://download.eclipse.org/eclipse/downloads/,下载eclipse sdk版本的,解压缩即可。我的版本是Eclipse SDK 3.1.1。
      3.C/C++ Development Toolkit
       CDT,Eclipse插件。官方下载 http://www.eclipse.org/cdt/,历史版本下载 http://www.eclipse.org/cdt/index_old.html,下载 org.eclipse.cdt-*.zip,解压缩到eclipse目录下即可。我的版本是 org.eclipse.cdt-3.0.2。
      4.MinGW
      C/C++的编译器,该工具是一组可免费获取、自由分发的特定于 Windows 的头文件和导入库,这些头文件和导入库与 GNU 工具集结合在一起。下载地址 http://prdownloads.sourceforge.net/mingw/,下载可执行文件安装即可。我的版本是MinGW-3.1.0-1。
      二.环境变量配置
      主要是MinGW的环境变量的配置,要告诉系统从哪里可以找到MAKE。假如MinGW安装在D:/MinGW目录下,新建一个CDTCon.bat的批处理文件,内容如下:
      set path=%path%;D:/MinGW/bin
      set LIBRARY_PATH=D:/MinGW/lib
      set C_INCLUDE_PATH=D:/MinGW/include
      set CPLUS_INCLUDE_PATH=D:/MinGW/include/c++/3.2.3;d:/MinGW/include/c++/3.2.3/mingw32;D:/MinGW/include/c++/3.2.3/backward;D:/MinGW/include
      执行批处理文件,就可以加入到系统的环境变量中。
      注意:找到你安装MinGW的目录,将MinGW/bin/mingw32-make.exe这个文件,改名为make.exe,否则编译程序的时候会提示错误。
      三.在Eclipse中使用
      打开Eclipse之后,就可以看到C/C++ Perspective了,New Project的栏目中也多了C和C++的选项了,这样就可以创建C/C++程序了。
      编译运行C/C++的Bulid Command稍有不同,C对应的是gcc 文件名.c -g -o run,而C++对应的是g++ 文件名.c -g -o run.编译之后,会生成run.exe,双击就可以看到执行结果。当然,为了避免一闪而过,C程序可以在结尾部分加一个scanf语句,C++程序可以加一句,system("pause").
      注意:为了避免启动Eclipse后indexer一直占用CPU而且无法停止,可以将indexer功能关闭 windows-->perferences--> c/c++-->indexer 选择No Indexer.
      四.做两个C/C++的题目测试一下吧。
      1.求一个int型变量二进制表示中1出现的个数
//binaryOpe.c
int main() {
 int para = 9999;
 char s;
 printf("NumOnesInBinary = %d/n", NumOnesInBinary(para));
 scanf("%d",&s);
}
int NumOnesInBinary(int number)
{
    int numOnes = 0;
    while(number)
    {
        number = number & (number - 1);
        ++numOnes;
    }
    return numOnes;
}
      2.一个射击运动员打靶,靶一共有10环,连开10枪,打中90环的可能性有多少种?请用递归算法编程实现。
//gang1090.cpp
#include <iostream>
using namespace std;
int sum;
int store[10];
void Cumput(int score, int num)
{
   if(score < 0 || score > (num+1)*10 )  //次数num为0~9
      return;
   if(num == 0) 
     {
        store[num] = score;
        ++sum;
        return;
     }
   for(int i = 0; i <= 10; ++i)
     {
        store[num] = i;
        Cumput(score - i, num - 1);
     }
}
int main(int argc, char* argv[])
    {
       Cumput(90, 9);
       cout<<"总数:"<<sum<<endl;
       system("pause");   
       return 0;
    }
      另类简单实现:C(9,19) = 92378,10个罐子,9个隔栏,19个位置放9个隔栏。
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值