C++程序设计 预备知识

1、进制的概念 逢R进一

2、自然语言和程序设计语言的定义

人与人之间沟通所用的语言笼统称为自然语言 人用来指挥计算机的工具叫做程序设计语言

3、程序设计语言分类

机器

汇编

高级

翻译程序:

汇编程序 : 将汇编源程序转换为机器语言的程序

编译器: 把高级语言转换机器或者汇编语言的翻译程序

编写程序的要求

正确性

可读性

高效率

4、C++的由来与发展

1、1963年英国剑桥大学推出了CPL(Combined Programming Language)语言,后来经简化为BCPL语言。

2、1970年美国贝尔(Bell)实验室的K.Thompson以BCPL语言为基础,设计了一种类似于BCPL的语言,取其第一字母B,称为B语言。

3、1972年美国贝尔实验室的Dennis M.Ritchie为致力于开发UNIX操作系统,它希望有一种语言能将低级语言(汇编语言等)的效率、硬件访问能力和高级语言的通用性融合在一起,于是他在B语言的基础上开发了C语言。

 4、C作为UNIX操作系统的开发语言而广为应用和流行。1989年制定为ANSI C标准。 ANSI C标准不仅仅定义了C语言,还定义了ANSI C实现必须支持的标准C库。最新标准C99。

5、和C语言一样,C++也是在贝尔实验室诞生的。Bjarne Stroustrup于20世纪80年代在这里开发出C++语言。用他自己的话来说:“C++主要是为了我的朋友和我不必要再使用汇编语言、C语言或其他现代高级语言来编程而设计的。它的主要功能是可以更方便地编写出好程序,让每个程序员更加快乐” 。

6、C++改进了C的不足之处,支持面向对象的程序设计,同时保持了C的简洁性和高效性。 

美国国家标准局在1990年设立了一个委员会(ANSI X3J16),专门负责制定C++标准。  

(1)1998年发布了C++标准第一版(ISO/IEC 14882:1998),该标准添加了:异常、运行阶段类型识别(RTTI)、模板和标准模板库。  

(2)2003年发布了C++标准第二版(ISO/IEC 14882:2003),对第一版作了修订。版本称为C++03, C++03 中修复的缺陷报告(核心 92 个,库 125 个)

(3)2011年发布新标准,版本称为C++11 ( ISO/IEC 14882:2011 ),引入大量更改, C++11 中修复的缺陷报告(核心 741 个,库 685 个)。  

(4)2014年发布新标准,版本称为C++14( ISO/IEC 14882:2014 ),C++ 标准的次要版本, C++14 中修复的缺陷报告(核心 276 个,库 149 个)。  

(5)2017年发布新标准,版本称为C++17( ISO/IEC 14882:2017 ), C++17 中修复的缺陷报告(核心 ? 个,库 281 个)

 (6)2020年发布了新标准,版本称为C++20.https://zhuanlan.zhihu.com/p/137646370

5、C语言的特点 

C语言优点:(1)语言简洁、紧凑,使用方便、灵活。(2)运算符和数据类型丰富。(3)访问内存地址、寄存器、进行位操作,具有汇编语言的功能。(4)生成的目标代码质量高、程序运行效率高。

C语言的局限性:(1)对类型的检查机制相对较弱、程序中的一些错误不能在编译时发现;(2)无支持代码重用的语言结构;(3)当程序规模达到一定的程度时,难以控制程序的复杂性;

(1)C++是C的扩展,C是C++的子集,C++ 包括C的全部特征、属性和优点。同时,增加了对面向对象编程的完全支持。(2)与C 一致, C++程序结构采用函数驱动机制实现。(3)C++实现了类的封装,数据隐藏、继承及多态,使其代码可重用并容易维护。(4)C++是一门高效的语言,既可进行过程化程序设计,又可进行面向对象程序设计。

6、C语言的基本组成 

C语言中 注释用// 或者/* ……*/(多行)

预处理命令 #include <iostream>

主程序 

int main()

{  

std::cout << “hello everyone” << std::endl;  return 0;

}

编译预处理

C++的编译分成两个阶段:预编译和编译 预编译处理程序中的预编译命令,即那些以#开头的指令 编译预处理主要有:

库包含:用#include实现,表示程序使用了某个库

宏定义 :用#define实现。宏包括不带参数的宏和带参数的宏。不带参数的宏通常用来定义符号常量。带参数的宏用来定义一些较为复杂的操作。 

库包含的格式

库是预先做好的一些工具程序。

每个库要提供一个接口,告诉库的用户如何使用库提供的功能。

库包含就是把库的接口文件放入源文件,以便编译器检查程序中对库的调用是否正确。

库包含格式:#include <filename>:包含了一个系统库 #include “filename”:包含了一个用户自定义的库

主程序

主程序由一个或多个函数组成每个程序都必须有一个名为main的函数,它是程序的入口。

输出流对象std::cout

“流”指的是设备之间传递的数据流输出流是传给输出设备的数据流cout代表显示器格式将hello显示在屏幕上:std::cout << “hello”std::cout << “hello, everyone” << std::endlstd::endl表示换行

名字空间 

在大型的程序时,每个源文件可能由不同的开发者开发。不同的源文件中可能有同样的名字。

当这些源文件连接起来形成一个可执行文件时,就会造成重名。名字空间是把一组程序实体组合在一起,构成的一个作用域。

一个名字空间中不能有重名,不同的名字空间中可以定义相同的实体名。当引用某个实体时,需要加上名字空间的限定  程序中的std是C++中所有标准库的名字空间名。

使用名字空间的指令 

格式:      using namespace 名字空间名;一旦用了使用名字空间的指令,该名字空间中的所有的实体在引用时就不需要再加名字空间的限定了。 第一个程序可以改写为:

// file: hello.cpp

// This program prints the message “Hello world.”

//  On the screen

#include <iostream>

using namespace std;

int main()

{

 cout << “Hello world.” << endl;   return  0;

}

这里就不用反复再输入std了 

程序的组成

变量定义:C++中的变量在使用前都必须被定义。变量定义严格指出变量中可以存放的数据类型。

输入阶段 :获取执行时才能确定的用户数据。输入过程一般包括两步 :显示提示信息 读取数据

计算阶段 :由输入推导出输出的过程。通常通过各种计算得到。

输出阶段:显示程序执行的结果

让我们上机练习把

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现
C语言是一种广泛使用的编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法包括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。下面详细介绍C语言的基本概念和语法。 1. 变量和数据类型 在C语言中,变量用于存储数据,数据类型用于定义变量的类型和范围。C语言支持多种数据类型,包括基本数据类型(如int、float、char等)和复合数据类型(如结构体、联合等)。 2. 运算符 C语言中常用的运算符包括算术运算符(如+、、、/等)、关系运算符(如==、!=、、=、<、<=等)、逻辑运算符(如&&、||、!等)。此外,还有位运算符(如&、|、^等)和指针运算符(如、等)。 3. 控制结构 C语言中常用的控制结构包括if语句、循环语句(如for、while等)和switch语句。通过这些控制结构,可以实现程序的分支、循环和多路选择等功能。 4. 函数 函数是C语言中用于封装代码的单元,可以实现代码的复用和模块化。C语言中定义函数使用关键字“void”或返回值类型(如int、float等),并通过“{”和“}”括起来的代码块来实现函数的功能。 5. 指针 指针是C语言中用于存储变量地址的变量。通过指针,可以实现对内存的间接访问和修改。C语言中定义指针使用星号()符号,指向数组、字符串和结构体等数据结构时,还需要注意数组名和字符串常量的特殊性质。 6. 数组和字符串 数组是C语言中用于存储同类型数据的结构,可以通过索引访问和修改数组中的元素。字符串是C语言中用于存储文本数据的特殊类型,通常以字符串常量的形式出现,用双引号("...")括起来,末尾自动添加'\0'字符。 7. 结构体和联合 结构体和联合是C语言中用于存储不同类型数据的复合数据类型。结构体由多个成员组成,每个成员可以是不同的数据类型;联合由多个变量组成,它们共用同一块内存空间。通过结构体和联合,可以实现数据的封装和抽象。 8. 文件操作 C语言中通过文件操作函数(如fopen、fclose、fread、fwrite等)实现对文件的读写操作。文件操作函数通常返回文件指针,用于表示打开的文件。通过文件指针,可以进行文件的定位、读写等操作。 总之,C语言是一种功能强大、灵活高效的编程语言,广泛应用于各种领域。掌握C语言的基本语法和数据结构,可以为编程学习和实践打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

亚里士多没有德775

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值