codeblocks使用教程

操作方法

  • 01

    CodeBlocks简易教程--共同学习进步(完成) 教程前言:    使用了一段时间的VC6后,由于各种功能的需求,又不想安装VAX这类的商业插件,还因为VAX在Docments目录下面狂创建一堆的文件让人不爽,终于放弃了这个IDE,转而使用开源免费的CodeBlocks,这个IDE基本上满足了偶的需求,做为一款比较中量级的IDE,基于10.05版制作的CB绿色版才21.3MB左右,解压出来也不过100多MB左右,相比于巨无霸VC6、VS系列,非常小巧好用,便于U盘携带,是Windows下面学习C/C++的最佳助手。    在很多的编程论坛里,看到很多的C初学者提出的各种编程使用、编译器选择问题,大致是不知道怎么选择工具,不知道在哪里写代码,编译,运行,调试,往往这些问题基本上入门的人或是有一定水平的人跟本不愿回答,因而很容易造成初学者无所适从。本文是本人自己处理的Codeblocks 10.05绿色版的配套使用说明,部分引用网上已有的相关知识,以图文的方式带您快速了解这款英文版集成开发环境,同时讲解其内置编译器MinGW(Gcc)命令行编译的基础知识,帮您扫除C/C++学习道路上的障碍,了解IDE和编译器是如何协作,从而更快的进入学习状态,走进编程的大门。    绿色版下载地址:http://u.115.com/file/aq6fdtpx    大小:CodeBlocks.7z 21.3MB    绿色版说明:    基于codeblocks 10.05制作,内置MinGW (gcc)4.4.1编译器 * 更新了10.05里面的win32 - sdk为3.17新版,支持ddk/sdk/dx/gdi++编程    * 重新编译了cb的帮助官方文档,减少了chm文件的尺寸。    + 添加Depends.exe,来自微软的SDK XPSP2版本,用于查看文件依赖。    + 添加Spy++,来自SDK XPSP2版本,用于查看窗口消息和信息的。    + 添加c/c++标准库函数参考大全(中英版),来自cpprefence和网络。    + ResEd 2.0.0.6c版,来自RadAsm汇编的一个用于资源编辑的免费软件。    以上新增加的内容均放在/add目录下面,部分新增工具使用见下面的教程。CodeBlocks简介:    Code::Blocks是一个免费、开源、跨平台的C/C++ IDE,支持Windows、Linux、MacOSX。同时他还支持各种不同的编译器,如 GNU/MinGW C/C++,VC++ 6.0/2003/2005/2008,Borland C++,Digital Mars等等各种不同的编译器。经过14个组员长达2年对Code::Blocks的全部重写,终于发布了正式版8.02,最新版是10.05版,这个版本更包括了对构建基于wxWidgets的跨平台GUI程序的支持,堪比Visual C++。 wxWidgets则是一个十分优秀的跨平台的GUI框架,用其编写的C++应用程序可以十分方便地迁移到不同的系统上去。    Code::Blocks + wxWidgets两个同是支持跨平台的IDE和框架,使得跨平台的编程非常方便。然而Code::Blocks虽然包含了对wxWidgets的支持,但是却没有包含wxWidgets的构建环境,我们必须手动进行配置(多说一句,实际上是因为这个DD有点大,Dev CPP的相应编译包居然达到300MB之大,所以没法包含在官方的安装版本中。)    官方网站:  http://www.codeblocks.org    二进制下载:http://www.codeblocks.org/downloads/26    源代码下载:http://www.codeblocks.org/downloads/25界面预览:一。CB中一些常用设置和配置文件。二。工程创建三。创建源文件的二种方式。 四。编译、链接源程序。Realase和Debug。 五。调试六。ResEd使用,创建资源文件。七。多工程与配置。八。minGW命令行编译九。走出IDE的世界,我们一样有其它编程的选择。结束语。一、CB中一些常用设置和配置文件。    CB第一次使用的时候,需要进行一些简单的设置,个人认为以下几个地方设置可以搞一下,方便使用。(1)菜单Setting/Editor/Gennerl settings,如下图所示,把字体选大一点,第二个地方就是自动括号那里,如果你喜欢自己敲括号,就取消对勾。(2)菜单Setting/Editor/Code-completion and symbols browser,设置自动完成提示,如下图所示,第一个地方改成2,第二个地方往左拖,会更快的出现自动提示。(3)菜单Setting/Editor/Source formatter,这里如下图所示,可以设置格式化源代码风格,使自己的程序代码更加美观,编辑中点右键选Format this file既可格式化你的源代码。    CodeBlocks的配置文件存放在系统盘:\Documents and Settings\用户名\Application Data\codeblocks\一个名叫Default.conf的文件中,是一个XML格式的文本文件,如果你将CodeBlocks放在U盘上带着的话,需要把这个文件拷到U盘上,以备不同的机器上使用你自己的配置。二、工程创建    CodeBlocks提供类似于VC一样的工程管理,内置了很多类型的工程向导模版,我们以创建最简单的工程为例,如下图:在下面的对话框里选择相应的C/C++类型。然后在下面的对话框输入相关的工程名和存盘路径,就可以完成了,是不是很简单呢?三。创建源文件的二种方式。    有至少两程方式,可以在上面创建的工程中添加新文件。第一种可以上面的已创建好的目录中,直接用windows提供的创建新文件功能,创建一个空的c/c++文件,然后如下图所示,右点工程,选add files...添加进工程之中。第二种方式:可以从菜单File/New/file...添加新的源文件和头文件。但是编译的时候,请在菜单Project/Properties中注意一下下图设置,是否有勾选下。未勾选的情况下,该文件不会被编译。四、编译、链接源程序。Release和Debug。    OK,经过上面的步子后,我们就可以来编译生成程序了,如第一张图所示,点工具栏上最左边那个黄色齿轮,既可,如果你的程序通过编译,那么你将看到如图所示的提示信息:(图满了,下次又帖。)工具栏上有Build target可以选择Release和Debug两种生成方式,当需要调试时选Debug,当正式生成时选Release,虽然是废话,但还是要说。五。调试    调试程序是每个写程序必须要掌握的,在CB中我们可以很方便的进行程序调试,先可以从下图中了解一下Debug菜单中的基本命令和快捷键,F5- 断点切换 F8-开始调试 F7单步执行,Shift-F7跳进函数体,在程序中将光标放到想要断点的程序行,按F5后,就可以继续按F8开始调试,这个时候,可以把如图中所示的反汇编窗口和变量监视窗口打开,拖放到你想放的位置即可,如果要添加某个你需要监视的变量,可以使用Debug/Edit watches...这里进行编辑。图见一楼。六。ResEd使用,创建资源文件。    本节仅为Windows应用程序所用,学习基础c/c++的朋友可以跳过这一节。    首先,为了使用方便,我们把add/ResEd.exe这个应用程序添加到Codeblocks环境中来。选择菜单tools/configure tools。然后点添加add,在弹出的对话框中,name中输入例如Resource editor,Executable中选择add/ResEd.exe,working directory中选择add/目录做为工作目录。然后选择launching options下面最后一项,意思是运行是不行是控制台重定向捕获。点确定后,tools菜单就会多出一项,选择就可以执行ResEd这个程序了。    使用ResEd创建和编辑资源文件,新建时选择File/New Project新建工程,然后点选菜单Project/add Dialog等添加对话框,菜单,位图,字符串等资源进行设计,在保存前,为了使用C风格的资源,需要在菜单Option/Options第一个选项卡Exports中,Name Export Format 选 C defines,Default Export Filename那里输入resource.h或是其它.h文件名,所有的IDS才会导出到正确的头文件中,要不然导出的是汇编风格的。七。多工程与配置。    编程过程中,我们可能会创建多个工程共同协作的项目,例如,包括静态库,动态库,主程序,在CB中一个WorkSpace工作空间可以包括多个project工程,如图所示,CB windows编译版本也是采用cbp工程项目进行编译的,如果在工程中引用了第三方库文件,或者使用了例如Win32 Socket网络库,WinMM 多媒体库函数,需要将对应的库文件添加进工程才能正确的编译,如下图所示。八、minGW命令行编译8.1 MinGW 是什么?        MinGW 提供了一套简单方便的Windows下的基于GCC 程序开发环境。MinGW 收集了一系列免费的Windows 使用的头文件和库文件;同时整合了GNU ( http://www.gnu.org/ )的工具集,特别是GNU 程序开发工具,如经典gcc, g++, make等。MinGW是完全免费的自由软件,它在 Windows平台上模拟了Linux下GCC的开发环境,为C++的跨平台开发提供了良好基础支持,为了在Windows下工作的程序员熟悉Linux下的C++工程组织提供了条件。CodeBlocks内置此编译器在Codeblocks/MinGW目录下面,为TDM-MinGW,可以单独下载,另外还有MinGW-64,可以生成64位windows代码,可以去网上搜索下载。8.2 为什么使用MinGW?        因为我和很多IT人士一样,不愿意吊死在$M这棵树上。且不说开源这个理念的伟大,仅仅就Windows的安全性也已经让人们很不安心了。如果再深入一点从编写程序来看,在C++标准尚不成熟时期产生的MFC今天看来基本上就是盖子大叔凭着个人(或许是$M公司^^)理解所使用的C++方言。在我们期盼C++0x时代到来之前,没有任何实际行动能比严格遵循C++的ISO标准更能表达我们对于C++这个伟大的哲学体系的尊重。 从这个角度来说,遵循ISO标准的实现就是好的实现。所以,MinGW不会比VC差,况且,他既是开源软件家族中的一员,也是*nix平台下事实标准GCC的翻版。如果有一天我们开始使用Linux平台了,会因为今天透过MinGW所了解的GCC知识而受益。8.3 答疑与示例    Q:为什么要学习和掌握命令行编译?    A:了解并掌握一个程序的编译,链结过程是每个合格程序员的基本素质。也可以为你以后进入linux编程打下一定的基础。    所以我们依然以经典的hello world程序来进行示例,代码很短,所以不写注释了。1.Console命令行版本:文件名:main.c代码: 程序代码: #include<stdio.h>int main(){    printf("hello world\n");return0;} 在命令行下面输入:    gcc -Wall -c -g -o main.o main.c 进行文件编译。参数解释:    -Wall 打开所有的编译警告    -c 只时行编译,不进行链结。    -g 产生调试信息。    -o main.o 生成编译输出文件叫main.o最后进行文件链结:    ld -Lc:\mingw\lib -o main.exe main.o c:\mingw\lib\crt2.o -lmingw32 -lkernel32 -lmsvcrt参数解释:    -Lc:\mingw\lib 设置链结时库文件路径,不设置的话,-lmingw32这些参数会找不到的。    -o main.exe 设置输出最终的可执行文件main.exe。    c:\mingw\lib\crt2.o 这个是Windows系统的控制台程序初始化模块。    -lmingw32 -lkernel32 -lmsvcrt 这三个是指示链结时链上libmingw32.a libkernel32.a libmsvcrt.a相关库。其中后两个对应的是kernel32.dll和msvcrt.dll,基本的程序代码printf函数实际上调用的是puts函数,在msvcrt.dll动态库中。当正式编译的时候,可以使用以下命令行以生成最小的EXE:    gcc -s -O2 main.c -mconsole参数解释:    -s 编译生成汇编代码    -O2 进行目标代码优化,O1到O3范围    -mconsole 指定生成控制台程序。虽然这里正式编译的示例没有上面步子那么多,但你依然需要如示例所示,明白一个程序倒底和哪些库/模块进行了链结。然后我们使用depends.exe查看程序与运行库依赖,如下图所示:2.Windows版本:文件名:main.c代码: 程序代码: #include<windows.h>typedef HINSTANCE _h;int WINAPI WinMain(_h hinst, _h hprev, LPSTR cmd, int nShow){return MessageBox(NULL, "hello world!", "OK", MB_OK);} 命令行输入:    gcc -c main.c    ld -L"C:\Program Files\CodeBlocks\MinGW\lib" main.o "C:\Program Files\CodeBlocks\MinGW\lib\crt2.o" -lmingw32 -lkernel32 -luser32 -lmsvcrt    这里示例的是如果是带空格的路径。当正式编译的时候,可以使用以下命令行以生成最小的EXE:注意-mwindows表示的是生成windows应用程序    gcc -s -O2 main.c -mwindows用depends.exe查看程序与运行库依赖。用spy++查看窗口消息和信息。九、走出IDE的世界,我们一样有其它编程的选择。    通过上面的命令行编译,链结练习,相信你也明白了在IDE中点生成按钮时,背后做了哪些事情,OK,没有IDE的时候,我们难道就不能写程序了么?你是否还在为选择哪个IDE(VC6?dev cpp? trubo C? VS2008? VS2010? CB?)而为难?其实不用,Windows下面我们依然有其它选择,不用IDE,随便找个文本编辑器(世界上目前至少有1000多个文本编辑器可以选择,Notepad++, NotePad2, Programing NotePad。。。),甚至是记事本,都可以照样写程序,编译和链结,希望本文能带给和偶一样的初学者一些帮助。

(0)

相关推荐

  • CodeBlocks打造标准的C、C++集成开发环境的教程

    The open source, cross platform, free C++ IDE. Code::Blocks is a free C++ IDE built to meet the most ...

  • codeblocks教程

    操作方法 01 Codeblocks的特点是既小又专一,是非常好的C/C++编译器! 第一节:安装及调试 我们安装Codeblocks前需要安装wxGTK, 其次就是下载Codeblocks源码包. ...

  • codeblocks16.01最新中文汉化破解使用教程(附汉化包下载)

    codeblocks中文版是一款开放源码且功能全面的跨平台C/C++集成开发环境(IDE),采用c++语言开发,使用了蓍名的图形界面库wxWidgets,目前发布了windows版.mac版.linu ...

  • 关于windows下获取4s的siri里面的key补编教程

    近日大家对siri都感兴趣,咱们小4有了突破,但是好多人有4s不知道怎么获得key,下面就看看关于windows下获取4s的siri里面的key补编教程吧。 1、你的小4必须要有siri,我用的是sp ...

  • 用U盘助手快速U盘装系统图文教程详解全过程

    新手必看:针对大文件传输,u盘助手提供了u盘的NTFS格式化功能。 系统文件一般有二种格式:ISO格式和GHO格式。ISO格式又分为原版系统和GHOST封装系统二种。只要用解压软件WinRAR解压后有 ...

  • ghost11使用教程 ghost使用指南[图文]

    ghost一键备份还原工具目前已经发展到ghost11,对于以后的版本只是在性能上有所优化,对于操作界面使用方法仍然是与原来的大同小异!本文将详细为您讲解ghost的使用教程,包含ghost启动,备份 ...

  • ios5.01越狱后iphone美化教程(替换锁屏文字的路径)

    相信拥有iphone4的粉丝们都升级5.0.1并且完美越狱了吧!??完美越狱后的iphone,爱机人士肯定少不了美化,尤其是些女生,那么在此我来谈谈美化吧!!不多说,先上图,喜欢的就来学一学哈。有附件 ...

  • 图文结合ipad2授权教程,就不信你们搞不定

    很多新入手ipad2的朋友不懂啥是授权,尤其是要多人分享的授权时更是频频闪退,让很多人只能干着急 我建议使用虚拟机进行如下操作,效率会比较高,不会虚拟机的本机操作也可以 授权分为两种情况:一个人多个账 ...

  • 2011年最后一天让大家全部用的上siri(spriebug教程)

    最近很多童鞋反应装了cydia上的spire插件(将siri移植到i4),导致诸多第三方程序(例如QQ ,微博等)打不开,闪退以及白苹果现象。本人尝试了也出现过此现象,就像大家说的这属于spire的b ...