第 1 课 编程是一门技术 ——认识Dev-C++

news2024/11/25 15:44:18

        1.什么是编程?

        软件由程序和文档组成,每个程序都是由一条条计算机能够识别和执行的指令组成的,每一天指令指挥计算机完成指定的操作。编写程序又称编程,他是一门技术。通俗地讲,编程就是告诉计算机,你要帮我做什么、怎么做,但是计算机无法直接听懂人类的语言,所以需要使用一种计算机和我们人类都能“听”得懂的语言,这种语言就是计算机语言。计算机问世初期,人们只能用低级语言(机器语言或汇编语言)编写程序,但是这类语言较难掌握,而且写出的程序依赖于具体的机型,不能通用,也无法再不同机型之间移植。后来就出现了易学、易掌握、可移植性强,与具体的计算机硬件关系不大的高级语言。

        C++就是一种高级语言,它是由C语言发展而来的,与C语言兼容。C语言是1972年由美国贝尔实验室设计而成。1980年前后,贝尔实验室开始研发C++。C++是一种功能强大的混合型程序设计语言,利用它既可以进行面向过程的结构化程序设计,也可以进行面向对象的程序设计。Dev-C++是一个可视化集成开发环境,用此软件可以实现C++程序的编辑、编译、运行和调试等工作。

        2.认识Dev-C++编译器

首先,启动Dev-C++

方法一:双击桌面上的Dev-C++图标,如图:

方法二:在“开始”菜单里选择Dev-C++,即可启动Dev-C++。

Dev-C++的界面如图:

        3.新建源程序

选择“文件” → “新建” → “源代码”,新建一个源程序文件。

选择“工具” → “编辑器选项”,打开“编辑器属性”对话框,在“显示”选项卡中,可以调整字号的大小

如可将字号设置为20,如图:

        4.编写第一个程序

在编辑界面输入以下代码。

int main()

{

return 0;

}

int main() 是主函数的起始声明。所有C++程序都必须有且只有一个main()函数,而且都是从main()函数开始执行。

int是一种数据类型——整型,main()函数前的int表示主函数运行结束时,返回的数据类型是整型,在标准C++中规定main()函数必须声明为int。

return返回语句,一般是函数的最后一条可执行语句。main()函数末尾使用return返回语句时,数据 0 表示程序顺利结束,其他数表示有异常。

在C++中,每个语句是以“;”作为分隔符的,遇到“;”表示这个语句结束了,但预处理命令、函数头和花扩号“}”之后通常是不加分号的。

        5.运行程序

用高级语言编写的程序称为源程序,C++的源程序以 .cpp作为后缀。

为了使计算机能够执行高级语言的源程序,必须先把源程序翻译成二进制形式的目标文件,这就是编译,完成这个任务的软件叫作编译程序、编辑程序或编译器。

在编译运行之前必须先保存源程序,选择“文件” → “保存”或“另存为”,将命名后的源程序保存到指定的文件夹中。

源程序保存后,在选择“运行” →“编译运行”,对源代码进行编译运行。

编译时,如果程序有语法错误,将显示错误信息;如果程序语法正确,编译完成后,会得到一个或多个目标文件,系统将所有的目标文件和系统库文件等信息连接起来,形成一个可执行的.exe文件。上面的程序只有一个return返回语句,在运行时没有任何输出信息。

小提示:

如果Dev-C++是英文界面,可选择菜单栏中的“Tools” → “Environment Options...”,打开坏境设置对话框,将“General”栏中的Language选项改为“简体中文/Chinese”,即可改为中文界面。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2129042.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

合成控制法SCM

研究D的处理效应,找一个相似的样本,他们的差异就是处理效应。但:难点就在如何找到相似的样本。那么就通过合成法来合成一个虚拟的重庆。 案例:美国加州香烟法案出台 依靠权重来合成一个新的y 假设我们不用SCM,直接靠着…

文心快码前端工程师观点分享:人机协同关系总结与展望

🎁👉点击进入文心快码 Baidu Comate 官网,体验智能编码之旅,还有超多福利!🎁 本系列视频来自百度工程效能部的前端研发经理杨经纬,她在由开源中国主办的“AI编程革新研发效能”OSC源创会杭州站1…

CloudberryDB 内核分享:Directory Table 底层逻辑与实现原理讲解

在之前的直播中,我们向大家介绍了🔗,为企业AI应用创新提供更高质量的非结构化数据语料输入和知识库支持,感兴趣的朋友可以点击链接阅读。 随着我们的开源数据仓库产品Cloudberry Database(简称“CloudberryDB”&#…

杂七杂八-系统环境安装

杂七杂八-系统&环境安装 1. 系统安装2.环境安装 仅个人笔记使用,感谢点赞关注 1. 系统安装 Windows安装linux子系统WSL2:使用windows系统跑linux程序(大模型) 2.环境安装 目前仅专注于 NLP 大模型 机器学习和前后端的技术学习和分享 感谢大家的关注…

基于spring的博客系统(总)

通过前⾯课程的学习, 我们掌握了Spring框架和MyBatis的基本使⽤, 并完成了图书管理系统的常规功能 开发, 接下来我们系统的从0到1完成⼀个项⽬的开发; 1. 项⽬介绍 使⽤SSM框架实现⼀个简单的博客系统 共5个⻚⾯ 1. 用户登录 2. 博客发表⻚ 3. 博客编辑⻚ 4. 博客…

零工市场小程序是灵活就业的新趋势?

人力资源社会保障部曾发文《人力资源社会保障部 民政部 财政部 住房和城乡建设部 国家市场监管总局关于加强零工市场建设 完善求职招聘服务的意见》。 找零工在传统情况下会有比较多的困难,比如能能够掌握的信息较少、不知道工作单位是否靠谱等等的问题&#xff0c…

心觉:如何打破用脑学习的瓶颈?教你用心学习,实现真正蜕变!

Hi,我是心觉,与你一起玩转潜意识、脑波音乐和吸引力法则,轻松掌控自己的人生! 挑战每日一省写作167/1000天 我们经常听到父母对孩子说要“用心学习,用心学习” 大概意思是告诉孩子学习的时候要专注,要认真…

【9月持续更新】国内ChatGPT-4中文镜像网站大全

一、国内大模型与ChatGPT的区别 🧠 国内大模型:专注于国内市场,支持本土企业及用户,适用于中文语境下的客服、教育、内容生成等应用场景。ChatGPT:全球适用性强,但在中文环境下的本地化程度不如国内大模型…

Arm GIC-v3中断原理及验证(通过kvm-unit-tests)

一、参考连接 gic-v3相关原理可参考https://zhuanlan.zhihu.com/p/520133301 本文主要通过开源测试工具kvm-unit-tests,针对GIC的中断进行一系列验证,这样可以直入中断底层,熟悉整个原理。 kvm-unit-tests官网为kvm-unit-tests / KVM-Unit…

『 Linux 』协议的定制

文章目录 协议的概念序列化和反序列化网络计算器套接字接口的封装服务端大致框架协议的定制Request的序列化与反序列化Response的序列化与反序列化报头的封装的解包网络服务服务端的封装已提取报文的移除客户端的封装客户端的调用服务端接收多个请求 JSON 自动序列化反序列化使…

QT打开摄像头采集

QT打开摄像头采集 今天好不容易把opencv的环境装好,然后想学习一下人脸识别的功能,但是在图书馆坐了4个多小时了,屁股疼就先写个摄像头采集的功能,明天继续学习吧,废话不多,嚼个奶片开始发车!&…

3.安卓逆向-java语言控制流和数据类型

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于:图灵Python学院 上一个内容:2.安卓逆向-初识java语言 上一个内容里写了编写java语言代码的环境搭建,也就是下载…

你的个人生成式AI创新课程

我曾经写过许多博客文章,讨论如何使用生成式AI(GenAI)工具,例如OpenAI ChatGPT、微软Copilot和Google Gemini来提升专业效率和个人发展。然而,我们必须从仅仅使用这些GenAI工具来提高生产力的思维模式,转变…

echarts 关系图 legend 图例不显示问题

关系图希望显示图例,如下效果: 按照常规echarts图表的配置,配置完legend,图例居然不显示。 legend: {show: true,icon: circle,left: left }经过一番查找和思考,原来是因为series配置中没有设置categories项&#xf…

通信工程学习:什么是SLF签约数据定位功能

SLF:签约数据定位功能 SLF(Subscription Locator Function)即签约数据定位功能,是IMS(IP Multimedia Subsystem)IP多媒体子系统体系结构中的一个关键组成部分。其主要功能是在网络运营商部署了多个独立可寻…

Android平台RTMP|RTSP播放器如何回调YUV或RGB数据?

技术选型 我们知道,Android平台一般RTMP|RTSP播放器通常不直接提供回调YUV或RGB数据的功能。如果播放端有视觉分析或类似的需求,需要播放端,能支持YUV或ARG的数据回调,一般来说,可参考的方法如下: 1. 使用…

尚硅谷的尚乐代驾项目

项目源码 乐尚代驾项目: 重做乐尚代驾项目 (gitee.com) 一 项目介绍 1 介绍 【**乐尚代驾**】代驾是一种新型的出行服务模式,主营业务:酒后代驾、商务代驾、长途代驾,其主要特点是通过线上平台为用户提供代驾服务,伴随中国家…

Node.js学习记录(二)

目录 一、express 1、初识express 2、安装express 3、创建并启动web服务器 4、监听 GET&POST 请求、响应内容给客户端 5、获取URL中携带的查询参数 6、获取URL中动态参数 7、静态资源托管 二、工具nodemon 三、express路由 1、express中路由 2、路由的匹配 3、…

Navicat备份数据库

Navicat备份数据库 📔 千寻简笔记介绍 千寻简文库已开源,Gitee与GitHub搜索chihiro-doc,包含笔记源文件.md,以及PDF版本方便阅读,文库采用精美主题,阅读体验更佳,如果文章对你有帮助请帮我点一…

【Hot100】LeetCode—300. 最长递增子序列

目录 1- 思路题目识别动规五部曲 2- 实现⭐最长递增子序列——题解思路 3- ACM 实现 原题链接:300. 最长递增子序列 1- 思路 题目识别 识别1 :给出一个数组输入 nums识别2:严格递增的子序列,子序列可以是不连续的 动规五部曲 …