当前位置:网站首页>【C/C++ 1】Clion配置与运行C语言
【C/C++ 1】Clion配置与运行C语言
2020-11-06 01:22:00 【IT界的小小小学生】
文章目录
一、Clion配置
1.1简介
1.1.1 Clion idea
CLion是Jetbrains公司旗下新推出的一款专为开发C/C++所设计的跨平台IDE,它是以IntelliJ为基础设计的,同时还包含了许多智能功能来提高开发人员的生产力。
同样支持python哦,相信使用过IntelliJ idea开发过java的盆友都很清楚该IDE的强大,所以做为Jetbrains旗下的c/c++开发工具CLion同样包含了许多智能功能来提高开发人员的生产力,提高开发人员的工作效率。
Clion 代码风格等配置同Jetbrains相关软件,这里就不详细说明了。
1.1.2 C与C++的区别;面向过程与面向对象的区别
- C++是面向对象的(object oriented programming—OOP)。强调对象,由对象实施动作。
- C是面向过程的(procedure oriented programming—POP)。强调执行的过程。
总结:面向对象是首先抽象出各种对象(各种类),把数据和方法都封装在对象中(类),然后各个对象之间发生相互作用。
面向过程是将问题分解成若干步骤(动作),每个步骤(动作)用一个函数来实现,在使用的时候,将数据传递给这些函数。
- 一个典型的例子:把大象放入冰箱里面。
C++是这么做的:涉及到两个对象:冰箱和大象。三个动作:打开冰箱,放置大象,关闭冰箱。
首先定义一个冰箱类,他有打开的方法,放置的方法,关闭的方法。然后再定义一个大象类。接下来构建冰箱和大象的对象,然后冰箱对象调用打开门的方法,冰箱对象再调用放置大象对象的方法,最后冰箱对象关门。
Fridge{
open();lay();close();}//冰箱类有三个方法
main()
{
Elephant elephant;//构建一个大象对象
Fridge fridge;//构造一个冰箱对象
fridge.open();
fridge.lay(elephant);
fridge.close();
}
而当C是这么做的:首先打开冰箱门,然后把大象放入进去,最后关闭冰箱门。
main()
{
open();
lay(elephant);
close();
}
再来一个典型的例子:下雨了,人打开雨伞:
C++是这么做的:涉及到三个对象:雨,人,伞。两个动作:雨下,人打开伞。
首先三个对象,即定义三个类。雨对象Rain,它有下雨的方法fall();人对象Person,他有打开的方法open();伞对象Umbrella;
Rain
{
fall();
}
Person
{
open();
}
main()
{
Rain rain;
Person person;
Umbrella umbrella;
rain.fall();
person.open(umbrella);
}
而C是这么做的:
面向过程:下雨了,人打开雨伞:
main()
{
rain();
open(umbrella);
}
1.2 配置c
我的mac电脑已经装了c了,所以就不下载了,如果没有下载参考下方操作。
默认已生成了main.c,但是我们并不能运行,因为我们还缺少编译环境,点击Setting打开设置,搜索Toolchains,我们发现clion为我们提供的环境有这么几种MinGW,CygWin,Visual studio等,我此处选择的是MinGw,点击右侧download,下载后运行安装即可,然后在Enviroment右侧选择mingw-w64的位置即可,如下图:
1.3选择对应c/c++
c++选择 executable
c选择 cxecutable
1.4 自行创建c++
如果我们可以自行创建c/c++文件,如图:
C语言选择.c,C++选择.cpp!
1.5 Clion中生成多个可执行文件
在构建一个新的Clion工程的时候,会自动生成一个文件夹cmake-build-debug,可以帮助我们快速的对整个C++工程进行编译运行。而主函数编译后生成的可执行文件就位于cmake-build-debug文件夹下面。
如果我们需要在一个C++工程中构建多个主函数并生成多个可执行文件的话,我们就需要对CMakeLists.txt进行修改。具体步骤如下:
(1)如果我们创建了两个主函数文件,分别为main.cpp和main2.cpp。
(2)在创建第一个main.cpp之后,假设在CMakeList.txt是这样子的:add_executable(MAIN main.cpp)。
(3)在创建第二个main2.cpp的时候,需要选择target,如果是选择了第一个main.cpp,那么在CMakeList.txt中会出现add_executable(MAIN main.cpp main2.cpp),然而这样是无法实现我们的需求的。
(4)因此我们需要修改为add_executable(MAIN main.cpp)和add_executable(MAIN2 main.cpp)就可以构建出两个可执行文件。
(5)在Clion中使用的时候,在软件的右上角可以选择是对哪一个主函数文件进行编译,或者是对整个工程的main函数都进行编译
个人操作案例:
我现在main.cpp 是c程序,我运行 mian.cpp ,
1.在cmakelists.txt中add_executable 修改对应.cpp文件即可
2.注意一定要重新编译项目才可以。
3.如果运行map1.cpp文件 只需要将cmakelists.txt中add_executable 修改.cpp文件即可
add_executable(map map1.cpp)
版权声明
本文为[IT界的小小小学生]所创,转载请带上原文链接,感谢
https://vip01.blog.csdn.net/article/details/106344239
边栏推荐
猜你喜欢
技術總監7年經驗,告訴大家,【拒絕】才是專業
C++和C++程序员快要被市场淘汰了
自然语言处理之命名实体识别-tanfordcorenlp-NER(一)
How to demote a domain controller in Windows Server 2012 and later
中国提出的AI方法影响越来越大,天大等从大量文献中挖掘AI发展规律
Jmeter——ForEach Controller&Loop Controller
直播预告 | 微服务架构学习系列直播第三期
Examples of unconventional aggregation
2018中国云厂商TOP5:阿里云、腾讯云、AWS、电信、联通 ...
连肝三个通宵,JVM77道高频面试题详细分析,就这?
随机推荐
iptables基礎原理和使用簡介
利用 AWS SageMaker BlazingText 对不均衡文本进行多分类
Troubleshooting and summary of JVM Metaspace memory overflow
数字城市响应相关国家政策大力发展数字孪生平台的建设
7.3.1 file upload and zero XML registration interceptor
使用 Iceberg on Kubernetes 打造新一代云原生数据湖
3分钟读懂Wi-Fi 6于Wi-Fi 5的优势
事半功倍:在没有机柜的情况下实现自动化
Real time data synchronization scheme based on Flink SQL CDC
TensorFlow2.0 问世,Pytorch还能否撼动老大哥地位?
How to get started with new HTML5 (2)
WeihanLi.Npoi 1.11.0/1.12.0 Release Notes
Menu permission control configuration of hub plug-in for azure Devops extension
In depth understanding of the construction of Intelligent Recommendation System
【效能優化】納尼?記憶體又溢位了?!是時候總結一波了!!
網路程式設計NIO:BIO和NIO
hadoop 命令总结
【新閣教育】窮學上位機系列——搭建STEP7模擬環境
Use of vuepress
01 . Go语言的SSH远程终端及WebSocket