2022年编程入门基础知识总结 .pdf





《2022年编程入门基础知识总结 .pdf》由会员分享,可在线阅读,更多相关《2022年编程入门基础知识总结 .pdf(23页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、编程入门基础知识总结基本知识程序= 算法+ 数据结构,算法是对操作的描述,数据结构是对数据的描述。伪代码: pseudo code 程序一般包括:(1)预处理命令:#include 等(2)全局声明部分(3)函数:函数首部(声明)、函数体(局部声明+执行部分)程序执行过程源程序 -编译成目标程序obj-连接目标程序成可执行文件类:数据成员 +成员函数命名空间实际上就是一个由程序设计者命名的内存区域。程序员可以根据需要指定一些有名字的空间域,把一些全局实体分别放在各个命名空间中,从而与其它全局实体分隔开,解决名字冲突,防止全局命名空间污染。C+库的所有标识符(标准头文件中函数、类、对象、类模版)
2、都是在std 命名空间定义的A 的 ASCII码值 65 a 的 97 1.数据类型?基本类型:整型、浮点型、字符型、布尔型?构造类型:枚举、数组、结构体类型(struct )、公用体( union)、类类型?指针类型?引用类型?空类型: null int 4 unsigned int 4 short int 2 unsigned short int 2 long int 4 unsigned long int 4 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 23 页
3、 - - - - - - - - - char 1 uchar 1 float 4 double 8 long double 8 无符号:不用保存符号位,故比有符号多了一位有符号:数值用补码存放(无论正负 ),最高位为符号位VC中, long double 与 double 字节数相同,故long double 是无用的GCC中, long double 则有 12 个字节无负值的量可以定义为unsigned int ,如年龄、学号等,以增大存储范围。short int ,long int ,unsigned int 这些类型后面的int 可以省略整型表示:十进制,后面加L 或 l 八进制,前
4、面加0 十六进制,前面加0 x 浮点数表示:默认为双精度型double 后面加f 或 F 则为单精度float 后面加l 或 L 则为长精度型long double 指数形式数符数字部分指数部分a = 3.14e2 a=0.314e4 a=31.4e1 a=3140e-1 浮点数, 不管是用小数形式还是指数形式表示,在内存中都是以指数形式表示的,且数字部分必须小于1 如 3.14159 在内存中表示为+ .314159 3 ,数字部分为 .314159,是小于 1 的字符型字符型在内存中存储的是ASCII码,也是整型,故而可以把字符型赋给整型名师资料总结 - - -精品资料欢迎下载 - - -
5、 - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 23 页 - - - - - - - - - 字符串后面,编译系统会加个0 作为结束符符号常量用符号代表一个常量,如#define PI 3.14159 在编译时,系统会把符号常量替换成具体的值2.变量变量:程序运行期间,值可变的量变量名:代表内存中的一个存储单元,在编译连接时由系统给每一个变量分配一个地址标识符:标识实体名字的有效字符序列,字母、数字、下划线常变量:定义变量时加上const,运行期间值不可变,也即只读变量区别 #define 定义的符号常量与const 定义
6、的常变量符号常量只是用一个符号代表一个常量,在编译时把所有符号常量替换为指定的值,它没有类型,在内存中不存在以符号常量命名的存储单元常变量具有变量的特征,具有类型, 在内存中有以它命名的存储单元,与一般变量不同的是,常变量代表的存储单元值不可变。强定义的好处1.保证变量名使用的正确,不正确会在编译时报错2.每个变量指定为一确定类型,在编译时就能为其分配存储单元3.编译时即可检查变量进行的运算是否合法。3. 运算符二进制位运算& 二进制按位与| 二进制按位或 按位异或名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 -
7、 - - - - - - 第 3 页,共 23 页 - - - - - - - - - 右移位+ - 自加自减运算符+i 使用 i 之前, i 先自加i+ 使用 i 之后, i 再自加+ - 结合方向为自右向左例:!x+ 先取非,再 + (i+)+6 先 i+6,后 i+,不管有无括号,都是先运算,再自加(+i)+6 先自加,再加6 -i+ : i 左面是符号运算符,右面是自加运算符,设 i 等于 3,运算过程相当于-(i+),即 -i=-3 -3+1=-2 a = -i+:a 结果为 -3,先赋值,再自加;5-i+ =?答案 2 ?待测试i=1,j=2,则 a = i+j ?答案: 3 因为
8、相当于a=(i+)+j; i=1,j=2,则 a=i+(+j)?答案: 4 赋值运算符 =的优先级小于+ - 运算符名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 23 页 - - - - - - - - - 示例:int arr = 6,7,8,9,10; sint *ptr = arr; *(ptr+) += 123; printf(%d,%d,*ptr,*(+ptr); 解:*(ptr+) += 123; 相当于*ptr +=123; *ptr+; 故 arr0 =
9、 129; ptr 指向 arr1 printf 函数从右向左压栈,运算顺序:+ptr; 输出结果:8 8 cout 也是自右向左压栈。逗号运算符又称顺序求值运算符a = 3*4,a*5 则a=? 答案12 ?注意逗号运算符优先级最低。注:整个逗号表达式的值为 60(a=3*4=12,12*5 =60)x=(a=3,6*3) 则 x=18 x=a=3,6*a 则 x=3 3.内存存储浮点数在内存里和整数存储方式不同名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 23 页
10、- - - - - - - - - float a =1.0f; cout(int)a=(int&a); (int&a) 相当于把该浮点数地址开始的sizeof(int)个字节当成int 型数据输出,其值并不为1 (int)a 显示转换等于1 4.类型转换转换本质:按存储单元中的存储形式直接传送(1)浮点型赋给整型,舍弃小数部分(2)double 型赋给 float ,防止溢出错误(3)int, short, long 赋给 char,原封不动取低八位(4)signed 赋给 unsigned,符号位照搬。负数以补码形式存放,-1 赋给 unsigned int ,结果为 65536.整数不会
11、变,除非两个长度不同(int,long)发生截断名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 23 页 - - - - - - - - - 5.C+输入输出C+输入输出包含三个方面的内容(1)对系统指定的标准设备的输入输出。即从键盘输入、输出到显示器屏幕,称标准输入输出,简称标准I/O (2)以外出磁盘文件为对象进行输入输出,称文件I/O (3)对内存中指定空间进行输入输出,通常指定一个字符数组作为存储空间,称字符串输入输出,简称串I/O 在 C+中,输入输出流被定义为
12、类。C+的 I/O 库中的类称为流类,用流类定义的对象称流对象。C+中输入输出是调用输入输出流库中的流对象cin、cout 实现的,即I/O 不是 C+本身定义的,而是编译系统的I/O 库中定义的。I/O 控制符 #include setprecision(n) 设置精度为n,名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 7 页,共 23 页 - - - - - - - - - 十进制输出时,n 代表有效数字位数包括整数和小数;fixed(固定小数位数)和scientific (指
13、数)形式输出时,n 指小数位数(不包括整数部分)double a = 123.4567890123456 cout a; / 十进制输出,输出123.456 默认精度为6 coutsetprecision(9)a; / 十进制,输出123.456789 精度为 9 coutsetprecision(6); / 恢复默认精度coutsetioflags(iOS:fixed)a; / 固定位数, 123.456789 ,此时精度表示小数位数,精度为默认的 6 6.getchar() 和 putchar() coutgetchar(); / 读入的实际是ASCII码,故输出为字符ASCII码,97,
14、而非读入的字符cout(c=getchar(); / 输出为字符while(c=getchar()!=n) / 循环读入字符的控制名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 8 页,共 23 页 - - - - - - - - - 7.函数与模版函数原型:不同具体形参的函数声明如: float add(float,float) 主要作用:根据函数原型,在程序编译阶段对调用函数的合法性进行全面检查。函数重载: 同一函数名定义的多个函数,这些函数的参数个数,参数类型,参数顺序至少有一
15、项不同,一个函数不能既是重载函数,又是带默认参数的函数。函数模版:适用于函数个数相同,函数体相同,而只有类型不同的情况cpp view plain copy 01.#include 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 9 页,共 23 页 - - - - - - - - - 02.using namespace std; 03.template / template 04.T max(T a, T b, T c) 05. 06. if(ba) a = b; 07. if(
16、ca) a = c; 08. return a; 09. 10.int main() 11. 12. int a=1,b=2,c=3; 13. coutT(a,b,c); 14. float d=1.1,e=2.2,f=3.3; 15. cout T(d,e,f); 16. 变量作用域:变量有效范围,有四种:文件作用域file scope 函数作用域function scope 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 10 页,共 23 页 - - - - - - - - -
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年编程入门基础知识总结 2022 编程 入门 基础知识 总结

限制150内