codeblocks教程

codeblocks教程
codeblocks教程

先改正容易修改的错误,给a和d赋初值,假设a = 0, d = 0.1,保存当前文件。然后看看第15行,到底调用了哪个swap,因为我们的swap.hpp没有跟这个调用相匹配的函数,去能编译不出现语法错误,实在蹊跷,那我们就看看到底调用了哪个swap。选中swap(显示灰色),按下鼠标右键,在弹出的快捷菜单中选择,见下图。

弹出一个对话框,显示了所有可能的swap函数头,见下图。

居然有这么多的swap,前两个是我们自己定义的,后面的是系统自带的。不要忘记前面的using namespace std;这会污染整个std命名空间,这样使用是OOP的大忌!注释掉using namespace std;,加一行using std::cout;然后重新编译,看看结果如何。

最可能的匹配是void swap(int&, int&),但是参数类型却不合适,因此编译器报错。知道原因就好,改正方法非常简单,改成swap(&c, &d);就可以了。

接下来,我们看看为何两个字符窜的值不能交换吧。从输出信息可知,调用void swap(T*, T*);但是这个函数实现中有个判断是否相等的比较if(*x != *y),而此刻的*x和*y都是字符’s’(两个字符窜的首个字符相等),自然后面的三个语句根本就不执行,不要忘记判断字符窜是否相等的C语言库函数是strcmp,而绝非直接判断是否相等。那怎么修改呢?最简单的办法是用C++的string处理这个问题,把字符窜当成对象来处理。main函数前加一行#include ,然后用std::string定义字符窜,即std::string str1(“string 1”), str2(“string2”);,交换两个字符窜最好的办法是用std::string的成员函数swap,这样不需要复制字符窜内容,仅仅交换指针就可以了,也就是str1.swap(str2);。讲过上述这些修改后,保存,重新编译并运行得到的结果如下图。

3.5调试程序

伴随着编写的程序愈来愈复杂,我们往往很难一次性编译成功并运行得到我们期望的结果(虽无语法错误,但可能有逻辑错误),这时需要对程序进行调试以便定位错误。调试程序有时需要在程序中的某些地方设置一些特殊“点”,让程序运行到该位置停下来,有时需要检查某些变量的值,以帮助我们检查程序中的逻辑错误。

调试程序之前,首先要确认已经设置了Produce debugging symbols [-g]选项,按照如下顺序去找(->表示下一步):Project-> Build options…-> find_min-> Debug-> Compiler Flags-> Produce debugging symbols [-g],如果该项已经配置,则可以调试程序了,否则前面打勾,点击OK按钮设置好。

下面将会通过具体的例子简要讲述调试器的使用。

3.5.1面向过程风格的程序

假设我们有一个随机数集合,该集合内随机数个数随机(为了便于观察结果是否正确,我们假设该集合中随机数少于100个),要求找出最小的那个随机数。

从一批数据中找到我们需要的某一个方法很多,为了简单起见,我们使用顺序搜索算法。用C语言编写程序实现以上题目要求,写了三个文件,一个源文件(main.c),两个头文件,其中一个头文件(find_min.h)用来找出最小的随机数,一个头文件(output_all.h)用来输出这个随机数集合中的所有随机数,代码见下贴图。

上面贴图中,右图是工程find_min的展开图。为了节约篇幅,这里不讲述find_min怎么建立的(前面已经讲述了怎么建立工程),也不详细解释代码(代码中有注释),仅仅讲调试过程。

首先,要在程序中设置一个点,让程序运行到这个位置暂停,把光标置于您想启动跟踪程序运行过程的这行代码的前一行,再用Debug下拉菜单中或者调试程序快捷菜单上的Run to Cursor按钮启动调试器。(启动调试器的另一种方法是,用Debug下拉菜单中的Toggle breakpoint按钮先设置断点,然后点击Start开始按钮来启动调试器。)

接下来就要告诉跟踪程序运行到哪里再次停下来,以便我们检查此刻的运行结果,我们可以把光标置于该行代码前,然后再次点击Run to Cursor按钮,则程序运行到此处就停下来,此处称谓断点,可以用Debug下拉菜单中的Toggle breakpoint按钮设置断点,在一个断点前再次Toggle breakpoint,则该段点就被删除,如果想删除所有断点,可以用Debug下拉菜单中的Remove all breakpoints按钮。

如果我们希望每次总是运行到程序下一行前面,则可以点击Debug下拉菜单中或者调试程序的快捷菜单上按钮Next line,如果我们不想每次执行一行代码,希望执行的单位更小,可以逐条执行指令(Next instruction),如果运行到某个程序块(例如,调用某个函数)还可以选择按钮Step into,则运行到该代码块内,如果希望跳出该代码块,则可以选择按钮Step out。如果希望终止调试器,可以选择Continue按钮,则调试器会自然运行到结束,也可以用Stop debugger,则调试器就会被强行终止,调试过程结束。

在程序执行到输出语句前,屏幕始终不显示任何信息。如果我们希望查看程序中变量的值,则可以从Debug下拉菜单中选择Debugging windows子菜单的Watches按钮,也可以从快捷菜单按钮下找到Watches按钮。

下面用示意图说明调试find_min的过程。

(1)启动调试器

把光标置于int main之前,点击Run to cursor按钮,则可以看到{前面有个黄色的箭头,而且还会出现了一个没有任何输出信息的对话框,如下图。

(2)打开观察窗口

为了查看程序运行中变量值的变化情况,需要打开观察变量的窗口,用快捷菜单上按钮的下拉菜单中Watches打开即可(也可以用Debug-> Debugging windows-> Watches打开)。

Watches窗口见右图。

为了方便观察整个调试过程布局,拖动Watches窗口到

左下角,并展开各个变量,如下图。

此时,从Watches窗口中可以看到定义的局部变量都是随机值,因为程序尚未执行到给这些变量赋值的语句。

(3)执行到下一行(第10行代码)

见下面的截图,输出信息窗口仍然什么都不显示,观察变量值的窗口局部变量的值都是系统赋予的随机值(左下角红色文字部分)。

(4)执行到第14行

把光标放到第14行代码前面,点击Run to Cursor按钮,见下图。

由于第12行语句已经被执行,从观察窗口可以看到局部变量MOD = 100, SZ = 33 (观察窗口红色文字部分),此外日志窗口的调试器Debugger栏目也出现了一些文字,显示了main.c被执行的代码。

(5)执行到第17行

把光标放到第17行代码前面,点击Run to Cursor按钮,见下图。

(6)执行到output_all函数

把光标置于第19行前,执行到此行,然后用鼠标点击Step into,则出现如下界面。

从上图可以看出,由于执行到函数output_all的第9行,函数参数v和n已经被赋值,但是NL, M, i三个局部变量都是系统赋予的随机值,但是执行到第13行前的时候,三个局部变量都已被正常赋值,见下图。

点击Step out按钮,则跳出output_all函数体,此时output_all函数已经执行完毕,见下图。

从上图日志Debugger栏目的信息可以看出,output_all函数已经执行完毕,重新进入main.c函数体,并已经执行完第19行代码,并且屏幕显示了一些信息(output_all函数刚执行完毕后的结果),见下图。

(7)执行到find_min函数

把光标置于main函数第21行前,然后点击Run to Cursor按钮,再点击Step into按钮,则进入

find_min函数体,见下图。

从上图可以看出,已经执行到find_min函数的第7行代码前,此时find_min函数的参数已经被赋值,但是局部变量j和i仍然是系统赋予的随机值(因为第7行代码尚未执行)。

把光标置于第11行代码前,点击Run to Cursor按钮,此时

局部变量j已经得到确定值25(最小值下标),由于循环体已经执行

完毕,因此i得到66(跟传递进来的数组大小值相同,等于该次n

的值),见右边Watches窗口的截图。

点击Step out按钮,则跳出find_min函数体,重新进入main

函数,见下图。

(8)输出最小值

把光标置于第28行代码前面,点击Run to Cursor按钮,可以看到Watches窗口已经显示局部变量min 的值为25,见下图。

由于main函数同时输出信息窗口也显示了最小值,见下图。

用鼠标点击Continue按钮继续运行,则输出如下信息,见下图(如果您使用的中文版操作系统,最下一行信息可能是:按任意键继续...)。

程序运行完毕,用鼠标点击Stop debugger按钮关闭调试器即可。以上程序中也可以不用在堆上动态分配空间(见main函数第14行代码),由于需要的空间不太大,可以使用数组在栈上分配空间即可。

本小结例子中的程序编译运行结果正确,没有逻辑错误,这样的程序无需调试,只不过为了说明怎么使用gdb调试器而进行调试的。

3.5.2面向对象风格的程序

以下有一个cstr_wrapper的类,用来封装C风格的字符窜,仅仅对C风格的字符窜进行引用(不做深层复制),提供了一些必要的成员函数。本程序中不止一处有逻辑错误,现在使用gdb调试器来找出错误的位置和原因。

建立一个工程,取名为ugly_str(取这个名字的原因很简单,因为这样设计封装C风格字符窜很愚蠢),该工程中有四个文件,main.cpp,cstr.hpp, ref.hh,copy.hh。其中cstr.hpp定义了cstr_wrapper,对C风格字符窜进行封装,ref.hh和copy.hh是两个测试函数,分别测试引用和复制字符窜时是否工作正常。建立的这个工程跟上小节3.5.1中共用一个Workspace(工作空间名字随便取),编译或者调试这个工程前需要激活它(让系统知道你对它操作,而不是对原来的find_min工程操作),激活的方法很简单,选中工程名ugly_str,按下鼠标右键弹出的菜单中选择Activate project,则该工程此时就处于激活状态,原来激活状态的find_min工程进入休眠。

编译并运行之,见下面弹出的窗口,居然没有显示任何信息!

设置一个断点,点击按钮运行之,打开Watches窗口,见下图。

从上图中可以看出,已经建立对象s1,但是它的值(指针)为0,不指向字符窜。在32位Windows系统上,操作系统占用低地址,地址为0的内存禁止用户程序访问,访问系统占用内存是非法操作,如果您懂gcc汇编的话,打开汇编窗口,或者用鼠标点击Next instruction按钮就可以看到汇编代码,更容易看出问题。查看cstr_wrapper的构造函数发现,有这样一个函数头cstr_wrapper(const char* str = NULL);显然这里有问题,空窜应该是””,而不是NULL,改正过来重新编译运行,结果如下。

从上图可以看出ref.hh函数测试已经通过,但是copy.hh测试输出的第一个字符窜就错了,结合源代

码,先注释掉test_ref();再对test_copy();进行跟踪。

程序代码见下面的贴图。

设置好断点,点击按钮启动调试器,见上图,打开Watches窗口,进行跟踪。点击Step into按钮,进入test_copy1的函数体,见下图。

继续Step into跟踪对象的创建过程,见下图。

从上面的截图可以看出,调用cstr_wrapper(const char*);创建对象,再结合test_copy1函数的代码可以发现虽然返回一个临时对象的拷贝没有任何问题,但cstr_wrapper的定义中构造函数仅仅拷贝了指针,待test_copy1函数体内的str过期被销毁的时候,新创建的对象(仅仅一个指针)将指向何处?继续跟踪到调用重载operator<<的友元函数输出时,从Watches可以发现此时创建的对象值(指针),已经指向一个莫名其妙的字符窜”F”(在您的电脑上可能是其他字符窜内容)。

由于cstr_wrapper本身定义就是复制一个指针,没有办法对它进行大的改动(除非重新设计和编码),

只能遗弃不用cstr_wrapper。

也许有的读者还想不明白为什么test_copy2函数能正常工作。虽然这个函数也是返回一个拷贝的对象(指针),但是它的函数体内有一条语句char* str =“copy a char* string.”;,由于C++本身设计为了兼容C 的语法,而C语言使用这种格式定义字符窜,在程序停止运行前不会被销毁,程序运行结束后由操作系统回收占用的资源,因此拷贝指向这个字符窜的指针在程序运行的生命周期内始终不会成为野指针,自然就能正常输出了。

3.5.3泛型程序

泛型程序调试更复杂一点,因为一个函数或者类往往由于初始化类型的不同,生成不同种类的对象,而且函数和运算符重载过程也比一般的函数和运算符重载复杂的多。

以下是一个简易栈的实现以及几个运算符重载,为了确保该栈实现的健壮性,也对它进行一些必要的测试。下面是各文件目录层次关系。

下面是代码贴图。

CodeBlocks中文版使用手册

C o d e B l o c k s中文版使 用手册 文档编制序号:[KK8UY-LL9IO69-TTO6M3-MTOL89-FTT688]

CodeBlocks中文版使用手册 工欲善其事,必先利其器。一个好的工具能事半功倍。写程序时,特别是写C++程序,大部分人脑子里想到的第一个工具就是VisualStudio。不可否认,VS很好很强大,用户体验非常好。但VisualStudio也是有缺点的:它非常庞大;只支持VC,不支持其他的编译器;VS只能在windows下跑,在其他os上就无用武之地;VS是要钱的,而且费用不非(Express版本免费)。Code::Blocks是一个非常优秀的工具,如果您正在寻找VisualStudio之外的,开源、免费、轻便、支持多种编译器、跨平台的C/C++ IDE,那么Code::Blocks就是一个很好的选择。 1 CodeBlocks项目管理 下图是CodeBlocks运行时的用户界面: 管理(Management):管理窗口包含Project视图与Symbols视图。Project视图显示当前CodeBlocks打开的所有项目(译者注:类似与VS解决方案资源管理器);Symbols视图显示项目中的标识符:类,函数、变量等信息(译者注:类似与VS的类视图)。 代码编辑器:支持代码折叠,关键字高亮显示。上图main.cpp正在被编辑。 打开文件列表:显示当前在代码编辑器中打开的所有文件列表。 上图中打开的文件列表为:main.cpp, person.cpp, person.hpp

代码段(CodeSnippets):管理常用的代码段、常用文件链接(links to files)与URL。可以通过菜单 View->CodeSnippets 来显示该面板。 日志和其他:这个窗口用于输出日志信息,显示查询结果等等。 状态栏提供了以下这些信息: 编辑器中打开文件的绝对路径; 文件的编码类型; 光标所在的行与列; 当前的键盘模式(insert 或者 overwrite); 当前的文件状态。被修改过的(但尚未保存)文件将被标记为“modified”,否则这里为空; 文件操作的权限。如果文件是只读的,这里将会显示“Read only”,在 Open files list中,该文件会使用一个加琐的图标来显示; 个性化配置名称; CodeBlocks提示了非常灵活和强大的项目管理功能。下文将介绍项目管理的一些常用功能。 1.1 项目视图(Project View)

CodeBlocks教程

特别说明目录 封皮..............................................................................................................................0目录 (1) 前言 (2) 1.安装Code::Blocks (3) 1.1下载……………………………………………………………………………………….….…………. .3 1.2安装 (3) 2. Code::Blocks 的编程环境配置 (7) 2.1环境 (7) 2.2编辑器 (12) 2.3编译器和调试器 (13) 3.编写程序 (17) 3.1创建一个工程 (17) 3.2添加和删除文件 (20) 3.3编辑文件 (25) 3.4编译程序 (30) 3.5调试程序 (43) 3.6阅读别人编写的程序 (74) 4.附录 (79) 4.1Linux 下安装Code::Blocks (79) 4.2 Mac OS X 下安装Code::Blocks (80) 4.3 Code::Blocks 搭配高版本gcc 编译器 (80) 4.4安装配置boost (82) ...........................................................................87...................................................................................

前言 用高级计算机语言,例如C、C++,编写的程序,需要经过编译器编译,才能转化成机器能够执行的二进制代码。然而,把头脑中的思想转变成能够正常工作的计算机程序需要付出一定的努力和时间,因为为了让程序能够达到我们想要的结果,我们往往需要反复修改代码。本书的目的是帮助初学者学习组织程序编码逐步隔离并发现程序中的逻辑错误。通过本书,您可以学会怎么一步步的跟踪代码,找到问题出在什么地方,搞明白为何您的程序不能正常运行,这个过程称谓调试程序。手工跟踪能够有效的帮助初学者找到bug出在什么位置,消除bug,让程序正常运行。自动化的工具同样也能够帮助您跟踪程序,尤其当程序很复杂时效果更加明显,这种工具叫做调试器。调试器能够让运行中的程序根据您的需要暂停,查看程序怎么运作的。有些调试器是以命令行的形式工作的,较新的调试器有些具备好的图形界面,调试器能够方便的帮助您看到您定义的变量状态。基于图形界面的调试器是集成开发环境(IDE,即Integrated Development Environment)的一部分。本书的作用就是帮助您学习使用这种环境以便更好的掌握编程技巧。 一个调试器并不能解决您程序中出现的问题,它仅仅是一种帮助您编程的工具。您首先应该运用您手中的纸和笔分析程序,搞清到底怎么回事,一旦确定错误大致出在什么位置,便可以用调试器观察您的程序中特定变量的值。通过观察这些代码,可以了解到您的程序是怎么一步步执行的。 C/C++的IDE非常多,对于学习C/C++语言的朋友而言,用什么IDE可能并不重要,重要的是学习C/C++语言本身,不过,会用一款自己习惯的IDE进行程序的编写和调试确实很方便。 本书主要论述一款开源、免费、跨平台的集成开发环境Code::Blocks的安装、配置、以及程序的调试和编译等。Code::Blocks支持十几种常见的编译器,安装后占用较少的硬盘空间,个性化特性十分丰富,功能十分强大,而且易学易用。我们这里介绍的Code::Blocks集成了C/C++编辑器、编译器、和调试器于一体,使用它可以很方便的编辑、调试和编译C/C++应用程序。Code::Blocks具有很多实用的个性化特性,这里只会简单介绍少数几个常用的特性。 我们希望本书能够帮助您体验编程的乐趣的同时也能帮助您提高调试和编写程序的基本功。 如欲了解更多有关Code::Blocks的信息,请访问Code::Blocks的官方网站https://www.360docs.net/doc/427729523.html,。

CoeBlocks详细使用手册

3.4.5。每个版本之间的使用可能会有细微的差别。Code::Blocks 手册Version 1.0 感谢CodeBlocks项目组: Anders F. Bjorklund (afb), Biplab Kumar Modak (biplab), Bartomiej wiecki (byo), PaulA. Jimenez (ceniza), Koa Chong Gee (cyberkoa), Daniel Orb (daniel2000), Lieven de Cock(killerbot), Yiannis Mandravellos (mandrav), Mispunt (mispunt), Martin Halle (morten-macy), Jens Lody (jens), Jerome Antoine (dje), Damien Moore (dmoore), Pecan Heber(pecan), Ricardo Garcia (rickg22), Thomas Denk (thomasdenk), tiwag (tiwag) Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation. 1 CodeBlocks项目管理 下图是CodeBlocks运行时的用户界面: 管理(Management):管理窗口包含Project视图与Symbols视图。Project视图显示当前CodeBlocks打开的所有项目(译者注:类似与VS解决方案资源管理器);Symbols视图显示项目中的标识符:类,函数、变量等信息(译者注:类似与VS的类视图)。 代码编辑器:支持代码折叠,关键字高亮显示。上图main.cpp正在被编辑。 打开文件列表:显示当前在代码编辑器中打开的所有文件列表。上图中打开的文件列表为:main.cpp, person.cpp, person.hpp 代码段(CodeSnippets):管理常用的代码段、常用文件链接(links to files)与URL。可以通过菜单View->CodeSnippets 来显示该面板。 日志和其他:这个窗口用于输出日志信息,显示查询结果等等。 状态栏提供了以下这些信息: 编辑器中打开文件的绝对路径; 文件的编码类型; 光标所在的行与列; 当前的键盘模式(insert 或者overwrite); 当前的文件状态。被修改过的(但尚未保存)文件将被标记为“modified”,否则这里为空; 文件操作的权限。如果文件是只读的,这里将会显示“Read only”,在Open files list中,该文件会使用一个加琐的图标来显示; 个性化配置名称; CodeBlocks提示了非常灵活和强大的项目管理功能。下文将介绍项目管理的一些常用功能。 1.1项目视图(Project View) 在CodeBlocks中,Project的源文件(如C/C++的源文件及其对应的头文件)和编译属性设置信息都保存在.cbp文件里。可以通过菜单[File–>Project]启动工程创建向导来创建新的Project,然后通过管理窗口的上下文菜单[Add files](译者注:上下文菜单,指当前窗口中选中目标项目,然后右键显示的菜单)向Project中添加文件。CodeBlocks会自动根据文件的后缀将它们放入不同的类别文件夹中(译者注:这个文件夹是虚拟的,实际并不存在)。下面是默认的分类: Sources:包含源文件,后缀为*.c、*.cpp; ASM Sources:包括汇编源文件,后缀一般为*.s、*.S、*.ss、*.asm; Headers:包括头文件,后缀一般为*.h、*.hpp;

codeblock超级经典教程

Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境. Code::Blocks是开放源码软件。Code::Blocks由纯粹的C++语言开发完成,它使用了蓍名的图形界面库wxWidgets(2.6.2 unicode)版。对于追求完美的C++程序员,再也不必忍受Eclipse的缓慢,再也不必忍受https://www.360docs.net/doc/427729523.html,的庞大和高昂的价格。 主要特点Code::Blocks提供了许多工程模板,这包括:控制台应用、DirectX应用、动态连接库、FLTK 应用、GLFW应用、Irrlicht工程、OGRE应用、OpenGL应用、QT应用、SDCC应用、SDL应用、SmartWin

codeblocks-10.05mingw-setup.exe27 May 201074.0 MB BerliOS windows操作系统提供两个版本一个不带编辑器与一个带编辑器(mingw) 一.运行安装程序 3.1 步中,下载得到一个执行的文件,双击后运行,请按照以下说明进行安装。 1选择“Full/完整”安装,以免重要插件没有被安装上。 (图1:选择完整安装) 2安装目标路径,不要带有空格,或者汉字 2这一点并不是Code::Blocks的限制,而是因为mingw32里的一些命令行工具,似乎对长目录或带空格的目录支持有点小问题,我估计汉字目录也会出问题,但没试过。一句话,就装在根目录下的X:\CodeBlocks 即可。比如我是安装在E:\CodeBlocks下。

(图2:安装在根目录下的CodeBlocks子目录) 实现中文界面 实现中文界面,包括两个步骤。最主要的是安装其中文简体语方包。然后是安装今日提示英中双语版文件。前一文件由本站提供改进,后一文件由本站在原英文版上自行提供。 如果您正在使用CodeBlocks,请确保先退出该程序。 3安装中文语言包 首先,请在X:\CodeBlocks\share\CodeBlocks\ 建立一个子文件夹:locale,注意locale 全为小写字母。我对简体汉字的语言包做了较大改进,不过仍然没改完,另外,一些插件在当前版本本来就无法汉化的,所以还有一部分内容是英语的。繁体部分我没有改动。 点击下载d2school版Code::Blocks语言包。 下载后,请解压到前述的locale目录下,则locale目录下,应出现zh_CN和zh_TW两个子目录。重新启动Code::Blocks,点击主菜单的“Settings”,选择“Enviornment”。出现的对话框中,左边选中“View”,右边打勾“Internationalization (needs restart)”,并在后面的复合框中选中“Chinese (Simplified)”。确认退出本对话框。 (图4:设置简体语言包) 本项需要重启Code::Blocks方能起作用,所以请先退出Code::Blocks。

超级详细codeblocks的使用

说明:笔者打算用两篇日志来完成对Code::Blocks手册前二章的编译,分别是:使用篇、插件篇。本文是第一篇:Code::Blocks使用篇。原手册第三章介绍Code::Blocks变量、脚本的使用,第四章介绍如何从源码编译Code::Blocks,这两章内容不是很多,笔者认为对大部分用户帮助不是不大,暂不打算翻译。笔者使用的Code::Block版本是nightly builds,svn6088(可以在这个地址下载:https://www.360docs.net/doc/427729523.html,/index.php/topic,11875.0.html )。使用的编译器是GCC3.4.5。每个版本之间的使用可能会有细微的差别。因为水平有限,难免出错,欢迎指正! Code::Blocks 手册Version 1.0 感谢CodeBlocks项目组: Anders F. Bjorklund (afb), Biplab Kumar Modak (biplab), Bartomiej wiecki (byo), PaulA. Jimenez (ceniza), Koa Chong Gee (cyberkoa), Daniel Orb (daniel2000), Lieven de Cock(killerbot), Yiannis Mandravellos (mandrav), Mispunt (mispunt), Martin Halle (morten-macy), Jens Lody (jens), Jerome Antoine (dje), Damien Moore (dmoore), Pecan Heber(pecan), Ricardo Garcia (rickg22), Thomas Denk (thomasdenk), tiwag (tiwag) Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation. 1 CodeBlocks项目管理 下图是CodeBlocks运行时的用户界面:

CodeBlocks详细使用手册(免费)

笔者打算用两篇日志来完成对Code::Blocks手册前二章的编译,分别是:使用篇、插件篇。本文是第一篇:Code::Blocks使用篇。原手册第三章介绍Code::Blocks变量、脚本的使用,第四章介绍如何从源码编译Code::Blocks,这两章内容不是很多,笔者认为对大部分用户帮助不是不大,暂不打算翻译。笔者使用的Code::Block版本是nightly builds,svn6088(可以在这个地址下载:https://www.360docs.net/doc/427729523.html,/index.php/topic,11875.0.html )。使用的编译器是GCC3.4.5。每个版本之间的使用可能会有细微的差别。 Code::Blocks 手册Version 1.0 感谢CodeBlocks项目组: Anders F. Bjorklund (afb), Biplab Kumar Modak (biplab), Bartomiej wiecki (byo), PaulA. Jimenez (ceniza), Koa Chong Gee (cyberkoa), Daniel Orb (daniel2000), Lieven de Cock(killerbot), Yiannis Mandravellos (mandrav), Mispunt (mispunt), Martin Halle (morten-macy), Jens Lody (jens), Jerome Antoine (dje), Damien Moore (dmoore), Pecan Heber(pecan), Ricardo Garcia (rickg22), Thomas Denk (thomasdenk), tiwag (tiwag) Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation. 1 CodeBlocks项目管理 下图是CodeBlocks运行时的用户界面:

CodeBlocks使用方法

CodeBlocks使用方法 1、下载CodeBlocks.rar,并把它解压到当前系统分区中的某一根目录下,比如F:\,注意:不要解压到含有中文或空格的目录中(尤其是不能解压到桌面)! 2、进入“F:\codeblocks”目录,并双击“codeblocks.exe”可执行文件,启动它。 3、现在我们学习如何通过向导创建一个控制台应用,并且直接编译、运行它。 步骤1:Code::Blocks主菜单“文件”→“新建”→“项目…”弹出如下对话框中,开始“Console Application”。 (图1开始“Console Application”向导) 步骤2:如果出现向导的“欢迎界面”,直接点击下一步。 步骤3:出现用于选择语言的对话框,选择“C++”,下一步。 步骤4:出现选择文件夹的对话框,在“项目标题”中输入“HelloWorld”。两单词连写,不包括双引号。本步操作结果将会在“我的文档”中“CodeBlocks Projects”目录下,新建一个名称为“HelloWorld”的目录。 步骤5:出现编译器选项对话框。在“编译器”中选择“GNU GCC Compiler”。其下则默认“Debug”与“Release”两个编译目标都是默认选中的,不必改变,通常我们都需要调试和发行两个版本,就算是一个Hello Word的简单程序。按下“完成”。 步骤6:必要时按下“Shift+F2”,出现“Management”侧边栏,如下图:

(图8项目管理器) 步骤7:双击上图所示的main.cpp,将打开该文件。暂时我们还并不需要修改它。步骤8:主菜单“构建”→“构建”。或者,用热键Ctrl+F9,完成编译。 步骤9:再按Ctrl+F10,运行。(9、10步也可以通过工具栏实现,请读者自行熟悉)。下面是运行结果图: 步骤10:其中“Hello world!”是我们程序的输出。下面的内容是Code::Blocks 为了方便我们调试而增加的内容(本来该程序运行后,就直接退出),包括显示了程序运行用时,以及提示“按任意键退出”。 4、我们需要一款好的IDE,希望它不仅有助于我们学习C++,也应该是我们今后编写C++应用程序时的上好工具。目前我推荐使用Code::Blocks,它除了具备IDE典型的集编辑、编译、调试在一身的功能之外,还具备以下特点。 (1)开源 开源不仅仅意味着免费,它还意味着更好的学习途径。 (2)跨平台 包括Windows、Linux、Mac OS等。 (3)跨编译器 包括gcc/g++、Visual C++、Borland C++、Intel C++等超过20多款编译器。同时它也支持多种语言的编译,包括D语言等(当然,Code::Blocks主要支持C++语言)。 (4)插件式框架 Code::Blocks采用开放体系,有着良好的功能扩展能力。 (5)采用C++写成 无须安装额外的,往往是庞大的运行环境。再者,一款C++的IDE采用C++写成,这是最自然不过的事了。 (6)升级频繁与维护良好 差不多每个月都有升级包,有时甚至数天就有新的升级包可供下载。另外其官方论坛也相对活跃,除了提出BUG以外,来自世界各地热心维护者往往第一时间提供不同操作系统上的安装包。 (7)内嵌可视化GUI设计 IDE的图形界面,采用wxWidgets,同时也支持使用wxWidgets进行可视化图形界面设计。

在CodeBlocks中建立多文件项目的方法

在CodeBlocks10.05中建立C语言多文件项目的方法 1.点击文件(F)-新建-项目…菜单命令,进入如下界面: 图1新建项目对话框 2.选择Console application(控制台应用程序),然后单击“出发”按钮,进入Console application向导: 图2控制台应用程序向导之一图3控制台应用程序向导之二 3.单击“下一步”,选择使用语言为:C,进入“下一步”,输入“项目标题”及“项目所在的父文件夹”等信息;

图4控制台应用程序向导之三图5控制台应用程序向导之四4.单击“下一步”,设置编译配置如下: 图6控制台应用程序向导之五 5.单击“完成”,进入编辑界面。 图7编辑界面

6.修改编辑main.c文件即可。也可用“新建-文件”菜单新建多个C/C++source文件添加到这个项目中。 图8新建C语言源程序向导 可用下面三个文件测试: /*main.c*/ #include #include extern int a; int m=30; void funA(void); void funB(void); int main(void) { funA(); funB(); printf("Hello!Running main()Now!\n"); printf("a=%d m=%d in main()\n",a,m); return0; }

/*f1.c*/ void funB(void) { int b=20; printf("Hello!Running funB()Now!\n"); printf("b=%d in funB()\n",b); return; } /*f2.c*/ #include extern int m; int a=50; void funA(void) { printf("Hello!Running funA()Now!\n"); printf("a=%d m=%d in funA()\n",a,m); return; } 7.编译构建与单文件类似,不再重述。

codeblock使用方法

C++集成设计环境——Code::Blocks 安 装 1.版本说明 先简要说明一下Code::Blocks的版本号。 Code::Blocks采用两种方法的版本命名,这一点大家需要了解,以免搞胡涂了。 对于正式版,Code::Blocks采用“年份.月份”的方法。Code::Blocks至本文发表时,只出过一个正式版,是2008年2月出来的,所以这个正式版的版本号为:8.02。 对于非正式版,Code::Blocks采用其源代码管理工具svn的代码版本号。它是一个整数。 2.安装主要步骤 当前,要成功完成安装Code::Blocks,需要以下几个步骤: ?安装Code::Blocks第一个正式版本 ver 8.02。 ?安装Code::Blocks的最新升级包。 ?安装Code::Blocks的简体中文语言包。 ?完成Code::Blocks的基本配置。 刚一看似乎很复杂,其实不然。 另外,本文仅讲解如何在windows下安装。 3.安装正式发行版 Code::Blocks 的第一个正式发行版 8.02 (2008年2月发行) 是必须的。升级包必须在发行版安装后,才能安装。 3.1 下载正式版安装程序。 为了方便各位,大家可以直接用以下链接进行下载,可以使用相关下载专用软件以加快下载。 http://download.berlios.de/codeblocks/codeblocks-8.02mingw-setup.exe 或者http://download2.berlios.de/codeblocks/codeblocks-8.02mingw-setup.exe

3.2 卸载mingw32原有安装 根据实际情况,本步您可能并不需要执行。 Code::Blocks支持多种编译器,但我们主要讲Windows下的mingw32 g++编译器。因此需要安装mingw32。前面下载的安装程序已经自带有完整的mingw32环境。mingw32是g++环境在windows下的一个实现。为了避免版本与路径冲突,最好不要在一台机器上安装两个mingw32。所以本步要求检查一下。如果您以前有用过Dev C++之类也采用mingw32的IDE,那您最好先卸载了它们。如果您不懂什么叫mingw32,那估计你的机器就是没能安装过吧。那这一步跳过。 3.3 运行安装程序 3.1 步中,下载得到一个执行的文件,双击后运行,请按照以下说明进行安装。 3.3.1 选择“Full/完整”安装,以免重要插件没有被安装上。 (图1:选择完整安装) 3.3.2 安装目标路径,不要带有空格,或者汉字 这一点并不是Code::Blocks的限制,而是因为mingw32里的一些命令行工具,似乎对长目录或带空格的目录支持有点小问题,我估计汉字目录也会出问题,但没试过。一句话,就装在根目录下的 X:\CodeBlocks即可。比如我是安装在E:\CodeBlocks下。 (图2:安装在根目录下的CodeBlocks子目录) 4.安装升级包 Code::blocks的网站看不去不怎么更新,其实程序的主要都在它的论坛中的nightly builds子论坛中更新。 4.1 下载最新升级包

CodeBlocks详细使用手册

Code::Blocks使用手册 Code::Blocks手册前二章的编译,分别是: 使用篇、插件篇。 本文是第一篇:Code::Blocks使用篇。 原手册第三章介绍Code::Blocks变量、脚本的使用, 第四章介绍如何从源码编译Code::Blocks,这两章内容不是很多, 笔者认为对大部分用户帮助不是不大,暂不打算翻译。 笔者使用的Code::Block版本是nightly builds,svn6088 使用的编译器是GCC3.4.5。每个版本之间的使用可能会有细微的差别。 Code::Blocks 手册Version 1.0 感谢CodeBlocks项目组: Anders F. Bjorklund (afb), Biplab Kumar Modak (biplab), Bartomiej wiecki (byo), PaulA. Jimenez (ceniza), Koa Chong Gee (cyberkoa), Daniel Orb (daniel2000), Lieven de Cock(killerbot), Yiannis Mandravellos (mandrav), Mispunt (mispunt), Martin Halle (morten-macy), Jens Lody (jens), Jerome Antoine (dje), Damien Moore (dmoore), Pecan Heber(pecan), Ricardo Garcia (rickg22), Thomas Denk (thomasdenk), tiwag (tiwag) Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation. 1 CodeBlocks项目管理 下图是CodeBlocks运行时的用户界面:

使用Codeblocks创建OpenGL工程

Using OpenGL & GLUT in Code::Blocks Download Code::Blocks https://www.360docs.net/doc/427729523.html,/~goetz/codeblocks/ Download the GLUT bin file (first download link) from: https://www.360docs.net/doc/427729523.html,/~nate/glut.html ?After you download and open the GLUT bin zip file, you will need to: ?Copy glut32.dll to c:\windows\system, ?Copy glut32.lib to c:\program files\mingw\lib, and ?Copy glut.h to c:\program files\mingw\include\GL. ?These are default locations, your paths may be different. But basically, you place the .lib and .h files in the location of your compiler (in this case mingw). The .dll file goes in the windows system directory. Now you are ready to start Code::Blocks and make a new project. Open up Code::Blocks. Start a new Project by going to File, New, Project.

codeblock用法

来源:https://www.360docs.net/doc/427729523.html,/JGood/archive/2010/01/25/5252119.aspx 原手册下载:https://www.360docs.net/doc/427729523.html,/docs/manual_en.pdf 译者:JGood(https://www.360docs.net/doc/427729523.html,/Jgood ) 译者言:工欲善其事,必先利其器。一个好的工具能事半功倍。写程序时,特别是写C++程序,大部分人脑子里想到的第一个工具就是VisualStudio。不可否认,VS很好很强大,用户体验非常好。但VisualStu dio也是有缺点的:它非常庞大;只支持VC,不支持其他的编译器;VS只能在windows下跑,在其他os 上就无用武之地;VS是要钱的,而且费用不非(Express版本免费)。Code::Blocks是一个非常优秀的工具,如果您正在寻找VisualStudio之外的,开源、免费、轻便、支持多种编译器、跨平台的C/C++ IDE,那么Code::Blocks就是一个很好的选择。 说明:笔者打算用两篇日志来完成对Code::Blocks手册前二章的编译,分别是:使用篇、插件篇。本文是第一篇:Code::Blocks使用篇。原手册第三章介绍Code::Blocks变量、脚本的使用,第四章介绍如何从源码编译Code::Blocks,这两章内容不是很多,笔者认为对大部分用户帮助不是不大,暂不打算翻译。笔者使用的Code::Block版本是nightly builds,svn6088(可以在这个地址下载:http://forums.codeblo https://www.360docs.net/doc/427729523.html,/index.php/topic,11875.0.html)。使用的编译器是GCC3.4.5。每个版本之间的使用可能会有细微的差别。因为水平有限,难免出错,欢迎指正!

codeblock使用手册

1 CodeBlocks项目管理 下图是CodeBlocks运行时的用户界面: ?管理(Management):管理窗口包含Project视图与Symbols视图。Project 视图显示当前CodeBlocks打开的所有项目(译者注:类似与VS解决方案资源管理器);Symbols视图显示项目中的标识符:类,函数、变量等信息(译者注:类似与VS的类视图)。 ?代码编辑器:支持代码折叠,关键字高亮显示。上图main.cpp正在被编辑。 ?打开文件列表:显示当前在代码编辑器中打开的所有文件列表。上图中打开的文件列表为:main.cpp, person.cpp, person.hpp ?代码段(CodeSnippets):管理常用的代码段、常用文件链接(links to files)与URL。可以通过菜单View->CodeSnippets 来显示该面板。 ?日志和其他:这个窗口用于输出日志信息,显示查询结果等等。 ?状态栏提供了以下这些信息: ?编辑器中打开文件的绝对路径; ?文件的编码类型;

?光标所在的行与列; ?当前的键盘模式(insert 或者overwrite); ?当前的文件状态。被修改过的(但尚未保存)文件将被标记为“modified”,否则这里为空; ?文件操作的权限。如果文件是只读的,这里将会显示“Read only”,在Open files list中,该文件会使用一个加琐的图标来显示; ?个性化配置名称; CodeBlocks提示了非常灵活和强大的项目管理功能。下文将介绍项目管理的一些常用功能。 1.1 项目视图(Project View) 在CodeBlocks中,Project的源文件(如C/C++的源文件及其对应的头文件)和编译属性设置信息都保存在.cbp文件里。可以通过菜单[File–>Project]启动工程创建向导来创建新的Project,然后通过管理窗口的上下文菜单[Add files](译者注:上下文菜单,指当前窗口中选中目标项目,然后右键显示的菜单)向Project 中添加文件。CodeBlocks会自动根据文件的后缀将它们放入不同的类别文件夹中(译者注:这个文件夹是虚拟的,实际并不存在)。下面是默认的分类: ?Sources:包含源文件,后缀为*.c、*.cpp; ?ASM Sources:包括汇编源文件,后缀一般为*.s、*.S、*.ss、*.asm; ?Headers:包括头文件,后缀一般为*.h、*.hpp;

CodeBlocks用法总汇

说明: 1)以下需要设置的地方均在Settings->Editor...弹出的对话框中。 2)不少命令都可针对当前行或选中的代码块,下文简称当前行或选中块。 ==日常编辑== ?按住Ctrl滚滚轮,代码的字体会随你心意变大变小,对保护视力特别有好处。 ?在编辑区按住右键可拖动代码,省去拉(尤其是横向)滚动条之麻烦;相关设置:Mouse Drag Scrolling。 ? Ctrl+D可复制当前行或选中块。 ? Ctrl+Shift+C注释掉当前行或选中块,Ctrl+Shift+X则解除注释。 ? Tab缩进当前行或选中块,Shift+Tab减少缩进。 ?可拖动选中块使其移动到新位置,按住Ctrl则为复制到新位置。 ?按下Atl,再拖动鼠标,可以实现部分选择(即只选中一个区域内的字符,而不会包含它们所在行的其他字符)。 ?需要更大编辑空间时,F2和Shift+F2分别可以显隐下方Logs & others栏和左方的Management栏。 ==自动完成与缩写== 1)优化代码自动完成功能:在Code-completion and symbol browser中,?将Automatically launch when typed # letter中的4改成2,这样打两个字母就会有提示了。 ?将Keyword sets to additionally include中1到9都勾上(可在Syntax highlighting 的keywords...中设置,其中1是C++关键字,3是Doxygen关键字;我曾将wxWidgets的类名都加入7并设置相应的字体(粗黑体),看代码时特别爽)?将Delay for auto-kick-in when typing [.::->]拉到 200ms,这样快点出来提示?选中Case-sensitive match,防止一些无关的东西干扰,如果你想它帮你纠正大小写,那就去掉勾 ?在Keyboard short-cuts中将Edit->Code complete的快捷键由Ctrl+Space改为 Alt+/,因为前者与中文输入法切换冲突,该快捷键为已经输入的(不是正在输入的)词提供自动完成。 2)看Abbreviation一栏,里面定义了许多缩写(还可以自定义),只要输入这些缩写,并

codeblocks+编程使用手册

CODEBLOCKS快速上手教程 你是不是在想某一天IAR不再让XX的时候我该怎么办呢? KEIL也不行! (本人已不用KEIL很久了,现在用SDCC) 你不是认为开源.LINUX都是牛人玩的?是不是也想成为牛人!而不是用开源的东西仅仅是因为他不要钱? 是不是想哪一天也能为开源奉献点力量? 而这一切的开头都得你起码得会用这些软件吧! 一次和朋友聊天的时候朋友给我推荐了CODEBLOCKS! 于是下载下来!天啦,英文! 不会,丢一边,这一放就是一年 不过当时记得里面有个AVR的! 一年后,也就是前几天,买了块AVR学习板的PCB,是初版,上面BUG好多!还好本人焊接还可以,不成问题! 然后开始对开发软件选型! 一打听太多了 BASIC(不喜欢没理由! XX掉) IAR(用不起!虽然目前不是专门搞这个的,随便用用没问题,但如果这么想那么以后永远都只是随便搞搞) Codevision(听说还可以!不过没用过,) GCC FOR AVR(也就是WINAVR GCC可是大名鼎鼎呀,以后也想玩玩LINUX,那就是他了) 于是安装了AVR STUDIO 并安装了WINAVR 发现写代码的时候没提示,不爽! 于是代码还是用我一直喜欢的C_FREE来写 但是再换回到AVR STUDIO里编译的时候要等一秒AVR STUDIO才会提示文件已被更新 看来这样子不行,太没效率了! 这时候想起了一年前见过的CODEBLOCKS! 试试先 于是在电脑找了半天没找着,只要搜索了一下才发现,忽然发现这已是一年前的版本 于是在其发布网站下载了一个新版! 好了,我们先下载并安装好这次需要的!下载地址: CodeBlocks:https://www.360docs.net/doc/427729523.html,/ WINAVR:https://www.360docs.net/doc/427729523.html,/ 安装好! 首先要新建一个工程!

codeblocks安装和使用(精编文档).doc

【最新整理,下载后即可编辑】 以下是我个人使用CodeBlocks的小结,希望对大伙有所帮助。 这是C::B的一个安装和首次使用的一些配制过程: 先看效果图(好看了很多?倒不是,只不过因为我是在win7下……).

一、下载安装包: 如果您有安装以前版本,并不需要卸载。 Windows安装下载页面:https://www.360docs.net/doc/427729523.html,/downloads/26 请点击图中所示的链接: 点击进入下载页面 这个链接带有新版的MinGW gcc编译环境,但并不是(mingw)官方版本,而是TDM gcc 4.4.1 版本。如果您想另行安排,比如您只想用VC的编译器,可以下载上图中另一个链接。

二、 安装过程: (1) 选择定制安装:Full (2) 选择全部安装: 不然,可能 类似 CppCheck 的插件,就会找不到... (3) 修改安装路径: 这不是Code::Blocks 的错,而是 mingw gcc 的链接器 ln.exe 有个BUG ,不能链接位于带空格或汉字路径下的文件。 接下来的步骤和其它软件的安装就差不多了。 三、 为编译器配制编译环境: (1)、运行Code::Blocks ,第一次运行会弹出选择编译器,请选中gcc 编译器(一般情况下是第一项)。 定制安装 全部选中

(2)、在进入主菜单后,选择Settings->compiler and debugger… 1)、在弹出的对话框中最顶区域(第一项)选择GUN gcc compiler(通常是默认的) 2)、在第二项中找到Tookchain executables选项(如图所示): 01、编译器路径是编译器安装时的安装路径。 02、选择相应的编译器: 输入编译器所在路径 选择相应的编译器 03、在同一界面下,左边切换到最后一项“Debugger setting” 在第一项输入框中输入handle SIGTRA pnoprint

Codeblocks使用教程

CodeBlocks使用教程 Make by ECJTU_ACM,2012-12-17 一、简介 (1) 二、下载 (2) 三、安装 (4) 四、第一次启动 (7) 五、新建CPP文件 (9) 六、代码风格 (12) 一、简介 https://www.360docs.net/doc/427729523.html,/ ACM的现场比赛环境是Linux Ubuntu(全英文环境),可以使用的集成开发环境(IDE)是CodeBlocks。 强烈不推荐用VC6.0,除非你是要用MFC之类的,不过VS2012必须比VC强吧,我对微软的东西不大熟,VS对ACM而言也不是很标准。 Dev C++是初学者用的,用过一段时间后要换成CodeBlocks,对自己养成良好的编程习惯有很好的帮助,不管以后是搞ACM还是其他,计算机相关专业的学生在编写代码方面应该学习渐渐靠近标准才是。 IDE用英文原版的好,逐渐熟悉英文也是必要的,不管以后是否搞ACM。 以下是百度百科的介绍: Code::Blocks 是一个开放源码的全功能的跨平台C/C++集成开发环境。Code::Blocks是开放源码软件。Code::Blocks由纯粹的C++语言开发完成,它使用了蓍名的图形界面库wxWidgets(2.6.2 unicode)版。对于追求完美的C++程序员,再也不必忍受Eclipse的缓慢,再也不必忍受https://www.360docs.net/doc/427729523.html,的庞大和高昂的价格。

二、下载 可以下载二进制码包(binary release),也即我们在Windows下的.exe文件安装包。点击: 出现新的页面: 大部分的同学应该是使用Windows系统,所以点第一个。 页面跳到下面的位置:

相关主题
相关文档
最新文档