CLion小技巧(持续更新)
这篇文章分会放一些笔者自己积累的、平时常用的CLion小技巧,以及在使用中遇到的问题的解决方法。
文章目录
1.中文界面
在设置中选择Plugins一项,搜索Chinese:
安装这个即可。安装完毕后重启,就是中文界面了。
2.查看信息
按住Ctrl,把光标放到函数名、变量名上,即可看到声明位置等信息。按住Ctrl点击,即可跳转相应声明位置。
3.左右滑动
按住Shift再滑动滚轮,即可左右滑动。
4.批量重命名
这两天在整理代码,需要修改大量的函数名和变量名。但这是个很完整的工程,修改变量名和函数名的工程量是巨大的,不知道在什么位置就调用了一次。自己修改的话需要点开每个文件挨个查找,繁杂且容易出错,这种工作还是交给计算机干比较合适。我们选中需要改名的变量名或函数名,然后按Shift+F6
,然后输入改后的名字,然后再按一次Shift+F6
,即可完成全局重命名。最好重命名完后还是编译一下看看有没有出错,笔者目前还没有遇到过问题。
5.隐藏信息
编译以后会在下方显示编译信息,但是我们写代码的时候并不希望一直看着这些信息。我们可以按Shift+Esc
进行隐藏。
6.在工程中添加新目录以及新文件
6.1.添加新目录
在左侧项目栏中,如果你想在大文件夹下新建,则右键工程名;如果你想在子文件夹中新建,比如在Core目录下新增两个文件夹,则右键Core即可。还是建议大家把.c和.h分开,把代码分类放好:
如果大家用过Keil的话,应该会有印象:先添加文件夹,再添加文件,最后还需要把包含.h的文件夹放到一个路径下面。如果不进行最后一步,那么编译的时候就找不到头文件。Keil中是这样设置的:
在CLion中,我们同样也需要把包含头文件的路径填到相应的位置,与Keil的设置不同,在CLion中我们是将路径写到CMakeList.txt文件中去。打开文件,然后找到这一行:
include_directories(Core/Inc Drivers/STM32L4xx_HAL_Driver/Inc Drivers/STM32L4xx_HAL_Driver/Inc/Legacy Drivers/CMSIS/Device/ST/STM32L4xx/Include Drivers/CMSIS/Include)
这里面的路径是用空格隔开的,格式为:
include_directories(path1 path2 path3)
作者新建的文件夹中,UserInc是用于存放头文件的,把这个Core/UserInc
这一路径加到其中:
include_directories(Core/Inc Core/UserInc Drivers/STM32L4xx_HAL_Driver/Inc Drivers/STM32L4xx_HAL_Driver/Inc/Legacy Drivers/CMSIS/Device/ST/STM32L4xx/Include Drivers/CMSIS/Include)
这样新目录就添加完成了。
6.2.添加新文件
添加新文件有两种方式,一种方式从文件夹中进行操作,如把写好的文件复制进来,或者是直接在文件夹中新建一个文件,然后再把文件添加进来;还有一种方式是在CLion中直接添加文件到工程,然后自动在文件夹中生成新的文件。分别来讲一下怎么操作。
6.2.1.文件夹中添加
我们还是首先来回忆一下Keil中添加的方法。假设我们在Core/Src中添加了一个test.c文件,如下所示:
打开Keil,发现工程并不能找到这个文件:
我们在Keil中是如何操作的呢?双击Core文件夹,把test.c手动添加进去:
这样test.c才算加入到工程中:
在CLion中也类似。我们在Core/Src文件夹中添加test.c文件:
打开CLion,发现工程可以找到这个文件,但是这个文件并不是真的添加进来了,只是能看到而已!
我们在test.c和相应的test.h中添加一个test函数:
void test(void)
{
;
}
然后在main.c中调用,编译报错如下:
这就是因为我们在CLion中没有进行和Keil类似的添加test.c到工程的一步。在CLion中如何进行呢?右键test.c,点击这个重新加载即可:
再次编译,即可编译成功:
6.2.2.在CLion中添加
我们右键Src文件夹,添加一个.c文件:
注意添加的时候改为.c,且不勾选下面的一项:
编写test函数,编译试一下:
没有问题。两种方法都可以,读者可以根据自己的情况进行选择。