Code::Blocks是一款轻量级开源C/C++集成开发环境(Integrated Development Environment,简称IDE)。私以为远比VC6.0或Dev C++更适合于各类高校所开设的C语言课程,故撰写本文以提供Windows平台下Code::Blocks的基本的下载、安装与使用指南。如有错误,敬请指正,谢谢。
第一部分:Code::Blocks的下载
点击此处进入Code::Blocks官网下载页
点击进入页面后,您将会看到以下内容:

在此翻译一下下方的3个NOTE(依次从上至下):
- 注意:codeblocks-16.01-setup.exe文件包括Code::Blocks和它的所有插件。codeblocks-16.01-setup-nonadmin.exe文件给那些在他们机器上没有管理员权限的用户提供方便。
- 注意:codeblocks-16.01mingw-setup.exe包括额外的来自TDM-GCC (版本号为4.9.2, 32位, SJLJ版本)的GCC/G++编译器和GDB调试器。codeblocks-16.01mingw_fortran-setup.exe文件包括额外的GFortran编译器 (TDM-GCC).
-
注意: codeblocks-16.01(mingw)-nosetup.zip提供给那些讨厌安装程序的用户。然而,它不能让你去选择插件或特性来安装(它会包括所有插件和特性),并且它不会创建任何菜单或快捷方式。而安装程序可以让你根据自己的需求来安装。
如果不确定,请使用codeblocks-16.01mingw-setup.exe!
第二部分:Code::Blocks的安装
下载codeblocks-16.01mingw-nosetup.zip
解压
运行目录下的codeblocks.exe即可。

第三部分:Code::Blocks的基本使用
新建C语言控制台应用程序的基本方法
方法一
点击下图中create a new project

选择console application,然后点击右上角的Go按钮

点击next按钮

选择C,然后点击next按钮

在对应位置填好工程名,保存工程的文件目录,然后next

点finish按钮

双击main.c

可以看到,codeblocks默认为我们引用了两个最常用的头文件stdio.h
和stdlib.h
还有一个通常被称之为hello world
的程序。

使用Code::Blocks编译程序
上方工具栏,依次被绿色、橘色框出来的按钮。其作用,依次是编译链接、运行。您可以依次按这两个按钮来完成程序的编译链接,然后运行它。
然而,codeblocks为我们提供了一种更棒的解决方案,被红色方框框出来的按钮是编译链接和运行,您可以单击该按钮来一次完成编译链接,然后运行。

使用Code::Blocks调试程序
当程序出现错误的时候,例如运行时崩溃,或者运行结果不符合我们的期待,我们可以选择下断点、一步步跟踪程序的执行过程、监视变量变化等方法来帮助我们判断程序在哪里出错。
以下以一个简单的例子作为演示。
本例所使用的代码,您可以在这里获取
下断点:
将鼠标放到行号上方,右键单击,在弹出菜单中选择 Add breakpoint

当该行行号前出现红色小圆点,表示下断点成功。

还有更简便的一种下断点方式是
鼠标左键单击行号稍右侧一点的地方。
debug
debug原意为为程序除错,在这里,我们指用调试运行程序。
这时我们要用到下图红框所示的工具栏中的按钮




- 第一个,Run to cursor,运行到光标所在的那一行
- 第二个,Next line,运行到下一行,步过
- 第三个,Step into,步入
- 第四个,Step out,步出
步入 步过
当在一个函数中调用另一个函数:
选择步入,则会进入那个函数,在函数的第一个语句处停止
选择步过,则会直接执行函数,然后在下一个语句处停止



在上图中,我们还可以看到变量监视窗口,用于实时查看变量的值
其中,红色显示的,表示在上一个语句中刚刚被修改/创建的变量
运行到光标所在处


步出
步入一个函数后,返回到函数的调用处


网友评论