365bet足球即时比分

DevC++的使用技巧以及在使用DevC++过程中可能会遇到的一些问题

DevC++的使用技巧以及在使用DevC++过程中可能会遇到的一些问题

文章目录

0. 前言1. 官网2. 配置界面语言3. 快速新建源文件和自动生成代码模板4. 视图5. 编译运行和调试5.1 调试的注意事项5.2 调试时查看变量的信息

6. 更改主题和更改语法高亮提示6.1 更改主题6.2 更改语法高亮提示

7. 常用快捷键以及快捷键的更改7.1 格式化代码7.2 复制行7.3 搜索文件内容7.4 替换文件内容7.5 比赛中的小技巧7.6 代码补全7.7 代码上移或下移

8. 查看函数所需要的形参9. 调整代码的字体大小10. CTRL+鼠标左键11. 在使用DevC++过程中可能会遇到的一些问题11.1 使用auto关键字时报错11.2 使用to_string方法时报错11.3 ld returned 1 exit status

12. 交流群

0. 前言

如果是学习C / C++,不建议使用DevC++,我们可以选择其它更高效的IDE(Clion、Visual Studio、VSCode等)

但是DevC++作为蓝桥杯大赛(软件类)C / C++组指定的IDE(Integrated Development Environment),我们有必要学习一下如何使用它

我们可以不用DevC++,但是我们不能不会使用DevC++

当然,如果比赛时你所用的电脑上有别的IDE(CodeBlocks、Visual Studio 2022等),也是可以使用的,选择你熟悉的IDE就可以了

1. 官网

DevC++的官网:DevC++

2. 配置界面语言

在菜单栏中找到:工具→环境选项→语言

↓↓↓

3. 快速新建源文件和自动生成代码模板

快速生成源文件的快捷键:CTRL + N自动生成代码模板

在菜单栏中找到:工具→编辑器选项→代码→缺省源

↓↓↓

在缺省源中输入自定义的代码模板

在比赛中,我们可以利用 CTRL + N 快捷键迅速新建源文件,一个源文件对应一道题

利用好快速新建源文件和自动生成代码模板,能为我们节省不少时间

以下是一套经典的C / C++代码模版(当然,可以使用万能头文件)

#include

#include

#include

#include

#include

#include

#include

#include

#include

using namespace std;

void solve() {

}

int main() {

std::ios::sync_with_stdio(false);

cin.tie(0);

cout.tie(0);

int T = 1;

cin >> T;

while (T--) {

solve();

}

return 0;

}

4. 视图

为了使代码编辑页面最大化,我们可以关闭项目管理页面。调试时,我们可以重新打开项目管理界面查看调试信息

在菜单栏中找到:视图→项目管理

5. 编译运行和调试

编译运行的快捷键:F11

调试的快捷键:F5

在比赛中不建议打断点进行调试,毕竟比赛时代码量也不大,如果打断点进行调试可能会耗费大量时间

如果想快速找到问题所在,可以在关键处打印出变量的信息来辅助调试

5.1 调试的注意事项

DevC++默认是不产生调试信息的,在不产生调试信息的情况下进行调试会出现以下界面

要想正常使用调试功能,需要打开产生调试信息

在菜单栏中找到:工具→编辑选项→代码生成 / 优化→连接器→产生调试信息

↓↓↓

5.2 调试时查看变量的信息

添加断点后点击添加查看(在底部功能栏的调试里),输入你想监听的变量的名称

按下调试按钮后,不断点击下一步(或下一条语句),即可实时查看到某个变量的值

6. 更改主题和更改语法高亮提示

DevC++的默认主题中代码编辑界面的背景是白色的,对于喜欢晚上敲代码的小伙伴来说十分不友好。

6.1 更改主题

在菜单栏中找到:工具→编辑器选项→语法→预设

↓↓↓

在下拉列表中选择自己喜欢的主题

6.2 更改语法高亮提示

前景可以理解为对应代码的颜色,背景可以理解为对应代码的背景颜色

在菜单栏中找到:工具→编辑器选项→语法→选择某个属性→更改前景和背景的颜色

↓↓↓

这里列出几个常用的属性

属性含义Comment注释Number数字String字符串Selected text被选中的代码

7. 常用快捷键以及快捷键的更改

7.1 格式化代码

相信用惯了JetBrains全家桶的小伙伴早已习惯了CTRL+ALT+L的代码格式化快捷键。

为了符合JetBrains全家桶的使用习惯,我们选择更改格式化代码的快捷键。

在菜单栏中找到:工具→快捷键选项→格式化当前文件

鼠标左键选中对应的条目之后按下自定义的快捷键即可

↓↓↓

我们也可以选择格式化代码的括号风格(默认是Java的括号风格)

在菜单栏中找到:Astyle→格式化选项→括号风格

↓↓↓

7.2 复制行

更改为CTRL+D(为了符合JetBrains全家桶的使用习惯)

7.3 搜索文件内容

快捷键:CTRL+F

建议把“搜索文件内容”快捷键前面的“搜索”快捷键删除掉(按下Delete键或ESC键即可删除快捷键)

7.4 替换文件内容

快捷键:CTRL+R

建议把“替换文件内容”快捷键前面的“替换”快捷键删除掉(按下Delete键或ESC键即可删除快捷键)

注意替换时要选择替换当前文件

如果想快速替换某个单词,只需要双击该单词,然后按下 CTRL+R 快捷键,DevC++会自动帮我们将要替换的单词填上去

↓↓↓

7.5 比赛中的小技巧

替换文件内容时记得选择当前文件,不然当前打开的所有文件中的int都会变成long long

在比赛时,题目给出的数据有可能会超出 int 的数据范围。为了方便,无论题目给出的数据有没有超出 int 的数据范围,我们统一使用 long long

但是我们平时习惯了使用 int ,让我们短期内改变自己的习惯不太可能

这个时候我们就可以用替换文件内容的功能,把当前文件中的 int 全改为 long long ,最后再单独把main函数前面的 long long 改回 int

7.6 代码补全

更改为CTRL+ENTER

相比JetBrains全家桶来说,DevC++的代码补全功能没有那么好用

更改完代码补全的快捷键后,我们再修改一下代码补全的延时

在菜单栏中找到:工具→编译器选项→代码补全→Code Completion,然后将延时拉到最左边

↓↓↓

设置完成之后,我们打出一个字母,按下 CTRL+ENTER 快捷键之后就会弹出代码补全提示了

如果我们想使用某个函数,又不想把整个函数名全部打完(或者函数名记得不是很清晰),我们也可以按下 CTRL+ENTER 快捷键来获得提示。

例如,我想使用 cmath 头文件下的 sqrt() 函数,当打出 sq 时,按下 CTRL+ENTER 快捷键就可以获得提示(弹出提示的前提是源文件已经包含了函数所在的头文件,当然,你可以使用万能头文件)

如果我们想查看函数返回的参数和调用该函数所需要传递的参数,我们可以把鼠标光标置于函数填写参数的地方(即括号中),就可以查看相关信息

7.7 代码上移或下移

代码上移:CTRL + SHIFT + ↑

代码下移:CTRL + SHIFT + ↓

这两个快捷键也可以在JetBrains全家桶中使用

示例(某一行的代码无需全部选中):

按下 CTRL + SHIFT + ↑ 快捷键后,选中的代码就会自动上移一行(若选中的代码上移一行后进入了另一个代码块,DevC++会自动帮我们调整代码的位置)

最后再按下代码格式化快捷键 CTRL+ALT+L

8. 查看函数所需要的形参

当我们不记得使用某个函数需要传递什么参数时,我们可以点击函数的括号以获得相关提示(如果点击函数的括号没有弹出提示,说明还没有包含函数所在的头文件)

点击提示上的小箭头,还可以查看函数的各个重载版本分别需要什么参数

9. 调整代码的字体大小

按住CTRL键后滚动鼠标滑轮即可调整代码字体大小

10. CTRL+鼠标左键

按住CTRL键后鼠标左键点击函数名可以快速定位到函数实现的位置,查看函数的源码

按住CTRL键后鼠标左键点击某个变量,可以快速跳转到定义该变量的位置

在程序的代码量比较大时,利用好该技巧可为我们节省一点时间

11. 在使用DevC++过程中可能会遇到的一些问题

11.1 使用auto关键字时报错

编译器给出以下提示信息

[Warning] ‘auto’ changes meaning in C++11; please remove it [-Wc++0x-compat]

原因:auto关键字在C++11之后的含义已经发生改变(根据提示信息推断出来的)

解决方法1:

在菜单栏中找到:工具→编辑选项勾选编译时加上以下命令输入以下代码

-std=c++11

解决方法2(推荐):

在菜单栏中找到:工具→编辑选项→代码生成 / 优化→代码生成→语言标准(-std)选择GNU C++11

11.2 使用to_string方法时报错

编译器给出以下提示信息

[Error] ‘to_string’ was not declared in this scope

原因:to_string方法是C++11之后才出现的

解决方法:与本文 11.1 使用auto关键字时报错 的解决方法相同

11.3 ld returned 1 exit status

之所以出现这个问题,是因为当前的程序正在另一个窗口运行(如果你的程序耗时较长,即使你关掉了窗口,程序也可能还没有真正关闭,需等待片刻才能重启程序)

如图,当前程序正在运行,需要我们输入一个整数

如果我们没有输入整数且没有关闭这个窗口,同时又再次编译运行当前程序,编译器就会给出提示信息[Error] ld returned 1 exit status

解决方法:关闭正在运行程序的窗口

12. 交流群