嵌入式Linux下C 程序设计简单程序设计

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

7
标识符的构成规则
以大写字母、小写字母或下划线(_)开始。 可以由以大写字母、小写字母、下划线(_)或数字0~9
组成。
大写字母和小写字母代表不同的标识符。
8
表1-1 常用基本数据类型描述
类 型 bool char unsigned char short unsigned short 说 明 逻辑型 字符型 无符号字符型 短整形 无符号短整型 1 1 1 2 2 长度 表 示 范 围 false,true -128~127 0~255 -32768~32767 0~65535 -27~(27-1) 0~(28-1) -215~(215-1) 0~(216-1) 备 注
插入换行符,并刷新流
以下带参数的操作符需要添加头文件iomanip setfill(int) setprecision(int) setw(int) 设置填空字符 设置浮点数的小数位数(包括小数点) 设置域宽
在使用setw(n)时要注意: ① 如果一个输出量需要比 setw(n)确定的字 符数更多的字符,则该输出量将使用它所需要的宽 度。例如: float amount=3.14159; cout<<setw(4)<<amount<<endl; 其运行结果为 3.14159 。它并不按 4 位宽度, 而是按实际宽度输出。
% ~ . { ^ < , } & > : * / ? _ \ ( + ‘ )
6
词法记号

关键字 C++预定义的单词 标识符 程序员声明的单词,它命名程序正文中的一些实体 文字 在程序中直接使用符号表示的数据 操作符 用于实现各种运算的符号 分隔符 () {} , : ;
用于分隔各个词法记号或程序正文 空白符 空格、制表符(TAB键产生的字符)、垂直制表符、换 行符、回车符和注释的总称


数据的输入与输出
I/O的书写格式




C++ 数据的输入与输出是通过 I/O 流来实现的, I/O 流输 入或输出的是一系列字节。当程序需要在屏幕上显示输出时, 可以使用插入符“<<”向cout输出流中插入字符。cout是预定义 的流类对象,“<<”是预定义的插入符,格式如下: cout <<表达式<<表达式… 例如,语句 cout<<"\"This is a sample.\ ",he said.\n"; 的输出结果为 "This is a sample.", he said.
变量的存储类型
auto 属于一时性存储,其存储空间可以被若干变量多次覆 盖使用。 register 存放在通用寄存器中。 extern 在所有函数和程序段中都可引用。 static 在内存中是以固定地址存放的,在整个程序运行期间 都有效。
14
运算符和表达式
运算符

② setw(n)仅仅影响下一个数值输出,换句 话说,使用setw设置的间隔方式并不保留其效力。 例如: cout<<setw(8)<<10<<20<<endl; 运行结果为 ------1020 运行结果中的下划线表示空格整数20并没有 按宽度8输出。setw( )的默认宽度为0,意思是按输 出数值表示的宽度输出,所以20就紧挨10了。
if (表达式) 语句1 else 语句2
例:if (x > y) cout << x; else cout << y;
if (表达式1) 语句1 else if (表达式2) 语句2 else if (表达式3) 语句3 … else 语句 n
if 语句
一般形式
if( ) if( ) 语句 1 else 语句 2 else if( ) 语句 3 else 语句 4
嵌入式Linux下QT程序设计
简单程序设计
本章主要内容
基本数据类型和表达式 数据的输入与输出
程序控制语句
自定义数据类型
3
C++语言的产生

C++是从C语言发展演变而来的,首先是一个更好的C 引入了类的机制,最初的C++被称为“带类的C” 1983年正式取名为C++ 从1989年开始C++语言的标准化工作 于1994年制定了ANSI C++标准草案 于1998年11月被国际标准化组织(ISO)批准为国际标准,成为 目前的C++

执行顺序
可以是多个语句,但不 必用{ }。
以case中的常量表达式值为入口标号,由此开始顺序执 行。因此,每个case分支最后应该加break语句。
while 语句
形式 while (表达式) 语句
可以是复合语句,其中必须含有 改变条件表达式值的语句。

执行顺序
先判断表达式的值,若为 true 时,执行语句。
语句


一般说来,C++语句和表达式并没有严格区分。一个表达 式,加上一个分号后,可以直接形成语句。例如,算术表 达式3+2,为其加上分号,写成如下形式: 3 + 2; 这就是语句了。计算机可以执行该语句,但它并不改变程 序的运行逻辑。当然,这条语句并没有实际意义。当一些 表达式组合起来,完成某一相对完整的功能后,再加一个 分号表示结束,这就组成一条语句。如下面的语句: a = 3 +2; 这就是一条赋值语句,其改变了a的值。
声明常量



根据常量的定义方法区分,常量可分为如下两种: const常量 宏常量 其中,用const定义的常量,称为正规常量,其说明语句 的一般形式为: const <类型名> <常量名> = <表达式>; 而宏常量是用#define定义的常量,其说明语句的一般形 式为: #define <宏名> <常量>
——嵌套
注意 语句 1、2、3、4 可以是复合语句,每层的 if 与 else 配对,或用 { } 来确定层次关系。
switch 语句
一般形式
switch (表达式) 可以是整型、字符型、枚举型 { case 常量表达式 1:语句1 case 常量表达式 2:语句2 ┆ 每个常量表达式的值不 case 常量表达式 n:语句n 能相同,次序不影响执 default : 语句n+1 行结果。 }
2
从右至左
3 4
从左至右
5
6 7 8 9 10 11 12 13 14 15
<< , >>
< , <= , > , >= = = ,!= & ^ | && || ?: =,+=,—=,*=,/=,%= ,&=,^=,|=,<<=,>>= ,
左移位,右移位
小于,小于等于 大于,大于等于 相等,不等于 按位与 按位异或 按位或 逻辑与 逻辑或 三目运算符 赋值运算符 逗号运算符 从右至左 从右至左 从左至右
数据的输入与输出
当程序需要执行键盘输入时,可以使用提取操作符“>>”从cin输


入流中抽取字符,格式如下: cin>>表达式>>表达式… cin是预定义的流类对象,“>>”是预定义的提取符。例如: int a; char c; cin>>a>>c; 要求从键盘上输入两个变量的值,两数之间以空格分隔。 若输入 4 8↙ 这时,变量a获取值为4,变量b获取值为8的ASCII值38( 十六进制)。因为变量 c的数据类型为 char,cin能够知道输入的 变量类型。
变量


变量可以用来存储程序中需要处理的数据。在使用变量前 ,需要使用声明语句对变量进行声明。C++中变量说明语 句的一般形式为: [<存储类> ] <类型名或类型定义> <变量名表>; 变量名表的格式主要有如下的三种: <变量名> <变量名>=<表达式> <变量名1>=[<表达式1>],<变量名2>=[<表达式2>],…
表达式





表达式是由运算符和操作数组成的式子,运算符可以是前 面一节介绍过的各种运算符。操作数包含了常量、变量、 函数和其他一些命名的标识符,最常见的表达式是常量和 变量。此外,由于C++中由于运算符很丰富,因此表达式 的种类也很多。常见的表达式有如下六种: 算术表达式。例如,a+5.2/3.0-9%5 关系表达式。例如,'m'>='x' 逻辑表达式。例如,!a&&8||7 条件表达式。例如,a>4?++a:--a 赋值表达式。例如,a=7 逗号表达式。例如,a+5,a=7,a+=4
32
do-while 语句
一般形式 do 语句 while (表达式)
可以是复合语句,其中必须含 有改变条件表达式值的语句。

-231~(231-1)
0~(232-1)
~Biblioteka Baidu
-231~(231-1) 0~(232-1) 7位有效位 15位有效位 15位有效位
常量

C++程序中的数据可分为常量与变量两大类。常量是在程 序运行过程中不变的量,变量是在程序运行过程中可发生 变化的值。在编程时,常量和变量必须遵循“先声明,后 使用”的原则,即所有常量和变量必须在使用前用说明语 句进行说明,否则编译时将会产生错误。

运算符的优先级
优先级 1 () :: [] .,-> . * ,- > * + +,-& * ! ~ + ,() sizeof new , delete *, / , % +,运算符 功能说明 改变优先级 作用域运算符 数组下标 成员选择 成员指针选择 增1,减1运算符 取地址 取内容 逻辑求反 按位求反 取正数,取负数 强制类型 取所占内存字节数 动态存储分配 乘法,除法,取余 加法,减法 结合性 从左至右
数据的输入与输出
简单的I/O格式控制 C++ 的 I/O 流类库提供了一些控制符,可以直接嵌
入到输入/输出语句中来实现I/O格式控制。使用格 式控制符首先必须在源程序的开头包含iomanip。
常用的I/O流控制符
控 制 符 Dec 含 数值数据采用十进制 义
Hex Oct
Endl
数值数据采用十六进制 数值数据采用八进制


C++语言中的运算符是可以让C++语言编译器能够识别的 具有运算意义的符号。编译器把这些符号及其组成的表达 式翻译成相应的机器代码,就可以由计算机运行得出正确 的结果。 C++提供的基本运算符有以下几种:算术运算符、关系运 算符、逻辑运算符、位运算符、条件运算符、赋值运算符、 逗号运算符、sizeof运算符及其它运算符(这是按功能分 的)。不同的运算符,需要指定的操作数的个数并不相同。 根据运算符需要的操作数的个数,可将其分为三种:单目 运算符(一个操作数)、双目运算符(两个个操作数)和 三目运算符(三个操作数)。

I/O格式控制例题。

按十六进制、八进制和十进制的格式输出数 据例题。提示:这三个控制符都是在iostream定义 的,所以无需加入头文件iomanip。
算法的基本控制结构
• 顺序结构 • 分支结构 • 循环结构
if 语句
if (表达式) 语句
——三种形式
例:if (x > y) cout << x;
程序设计方法

程序设计(Programming)是指设计、编制、调试程序的 方法和过程。按照结构性质,有结构化程序设计与非结构 化程序设计之分。 结构化程序设计方法主要使用顺序、选择、循环三种基本 结构,形成具有复杂层次的结构化程序 面向对象程序设计方法是以“对象”为中心进行分析和设 计的,使这些对象形成了解决目标问题的基本构件,即解 决从“怎么做”到“做什么”的问题。
4
C++的特点
全面兼容C 它保持了C的简洁、高效和接近汇编语言等特点 对C的类型系统进行了改革和扩充 C++也支持面向过程的程序设计,不是一个纯正的面向 对象的语言 支持面向对象的方法
5
C++字符集
大小写的英文字母:A~Z,a~z 数字字符:0~9 特殊字符: ! # = “ ; [ ]
int
unsigned int long unsigned long float double long double
整型
无符号整型 长整型 无符号长整型 浮点型 双精度 长双精度
4
4 4 4 4 8 8
-2147483648 2147483647 0~4294967295
-2147483648 2147483647 0~4294967295 -3.4×1038~3.4×1038 -1.7×10308~1.7×10308 -1.7×10308~1.7×10308
相关文档
最新文档