1 / 12
文档名称:

编程入门基础知识总结.docx

格式:docx   大小:193KB   页数:12页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

编程入门基础知识总结.docx

上传人:hhqs7 2022/8/12 文件大小:193 KB

下载得到文件列表

编程入门基础知识总结.docx

相关文档

文档介绍

文档介绍:Prepared on 22 November 2020
编程入门基础知识总结
编程入门基础知识总结
基本知识
程序 = 算法 + 数据结构,算法是对操作的描述,数据结构是对数据的描述。
伪代码:pseu -i=-3 -3+1=-2
a = -i++:a结果为-3,先赋值,再自加;
5-i++ = 答案2 待测试
i=1,j=2,则a = i+++j 答案:3 因为相当于a=(i++)+j;
i=1,j=2,则a=i+(++j) 答案:4
赋值运算符=的优先级小于++ -- 运算符
示例:
int arr[] = {6,7,8,9,10};
sint *ptr = arr;
*(ptr++) += 123;
printf("%d,%d",*ptr,*(++ptr));
解:
*(ptr++) += 123; 相当于 *ptr +=123; *ptr++; 故arr[0] = 129; ptr指向arr[1]
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

浮点数在内存里和整数存储方式不同
float a =;
cout<<(int)a==(int&a);
(int&a) 相当于把该浮点数地址开始的sizeof(int)个字节当成int型数据输出,其值并不为1
(int)a显示转换等于1

转换本质:按存储单元中的存储形式直接传送
(1)浮点型赋给整型,舍弃小数部分
(2)double型赋给float,防止溢出错误
(3)int, short, long赋给char,原封不动取低八位
(4)signed赋给unsigned,符号位照搬。负数以补码形式存放,-1赋给unsigned int,,除非两个长度不同(int,long)发生截断
++输入输出
C++输入输出包含三个方面的内容
(1)对系统指定的标准设备的输入输出。即从键盘输入、输出到显示器屏幕,称标准输入输出,简称标准I/O
(2)以外出磁盘文件为对象进行输入输出,称文件I/O
(3)对内存中指定空间进行输入输出,通常指定一个字符数组作为存储空间,称字符串输入输出,简称串I/O
在C++中,输入输出流被定义为类。C++的I/O库中的类称为流类,用流类定义的对象称流对象。
C++中输入输出是调用输入输出流库中的流对象cin、cout实现的,即I/O不是C++本身定义的,而是编译系统的I/O库中定义的。
I/O控制符#include <iomanip>
setprecision(n) 设置精度为n,
十进制输出时,n代表有效数字位数包括整数和小数;
fixed(固定小数位数)和scientific(指数)形式输出时,n指小数位数(不包括整数部分)
cout << a; 数与模版
函数原型:不同具体形参的函数声明
如:float add(float,float)
主要作用:根据函数原型,在程序编译阶段对调用函数的合法性进行全面检查。
函数重载:同一函数名定义的多个函数,这些函数的参数个数,参数类型,参数顺序至少有一项不同,一个函数不能既是重载函数,又是带默认参数的函数。
函数模版:适用于函数个数相同,函数体相同,而只有类型不同的情况
[cpp] view plain copy
01.#include <iostream>
namespace std;
<typename T>
06. if(b>a) a = b;
07. if(c>a) a = c;
08. return a;
09.}
main()
11.{
12. int a=1,b=2,c=3;
13. cout<<T(a,b,c);
14. float d=,e=,f=;
15. cout<< T(d,e,f);
16.}
变量作用域:变量有效范围,有四种:
文件作用域 file scope 函数作用域 function scope
块作用域 block scope 函数原型作用域 function proto