转义字符-16-
#include<>,"",系统的用尖括号,个人定义的用双引号sqrt() 包含于math.h 头文件类包含函数解释方式 和 编译方式 -30-编译和链接的过程
c语言与UNIXc语言的特点:优点:高效,灵活局限性: 类型检查机制相对较 弱,错误难以检查。 不支持代码重用. 2.c++扩充:支持数据抽象支持面向对象的设计编程改进了c语言中的若干不足之处c++简单程序#include<iostream.h>void main(){int a,b:cout<<"Enter two integer:”;cin>>a>>b;result=a+b;cout<<"\nThe sum of"<<a<<"+"<<b<<"="<<result<<endl;}#字母区分大小写注释:/* */ //c++新增的注释方法包含文件及头文件将其他文件中的源程序插入当前文件的#include语句位置中。#include<头文件>系统头文件#include“文件名”自己定义的标准输入与输出标准输入对象cin,例: int x,y cin>>x>>y">>"操作符标准输出对象cout例: int i=5: cout<<"The value of i is"<<i<<endl; #程序运行从主函数运行
输出字符型或整数型:count<<char(a)<<int(b)<<endl;
结构域联合结构与函数的关系结构体在函数间的传递 第八章 类与对象
指针数组static int *p[2];由p[0],p[1]两个指针组成 二级指针 命令行参数 main(int argc,char * argv[])main(int argc,char** argv) argc:命令名和所有参数个数之和 argv:各元素是指针,分别指向各参数字符串例:void main(int argc,char *argv[]){ while(argc>1){ ++argv; cout << *argv << endl; --argc; }} 指针域函数的关系1.以指针作为函数参数 以地址方式传递数据的 通过形参指针改变实参指正所指向的数据 减少参数传递过程中的数据复制量 指针型函数 函数的返回值是一个指针型的地址 int *fun(a,b) 指向函数的指针类型修饰符 (*函数指针名)();int (*p)(); //p指向一个返回整形值的函数p=fun();//p指向函数fun,且函数名后不能写参数,既p = fun(a,b)错,fun(x,y)得到一个函数值,不一定是地址值,而函数名则代表函数入口地址指向函数的指针调用(*指针变量)(实参列表)例如:(*p)(a,b) fun(a,b) p(a,b) 引用引用就是: 1.给某一个常量,变量,数组或者对象起了一个别名2.对引用的任何操作,都是对被引用的目标的操作3.引用必须在声明是就初始化类型修饰符 &引用名 = 被引用的目标的名字; 用引用返回多个值引用函数结构的定义steuct 结构名{ 数据类型 成员名1; 数据类型 成员名2;......................} 例子:struct person { char name[10];bool sex;int age ; } 结构变量 结构指针:定义一个指针,是指向这个结构体的变量 用结构指针访问结构成员变量 (*结构指针名).成员名结构指针名->成员名运算次序++pman->name 等同于 ++(pman->name) *pman->name 等同于 *(pman->name)
编译于处理#include<文件名>(系统) 将其他文件中的源程序插入当前文件的#inculude语句的位置
函数重载#include <iostream.h>int abs(int x);double abs(double x);long abs(long x);void main(){ cout << abs(-6) << endl; cout << abs(-6L)<< endl; cout << abs(15.3)<< endl; }函数重载的二义性(下面会引起编译错误)#include<iostream.h>float abs(float x){ return (x>=0?x:-x);}double abs(double x){ return (x>=0?x:-x);}void main(){ cout << abs(3.14) << endl; cout << abs(3.14f) << endl; cout << abs(-5) << endl;} 函数的作用域1.函数的声明和定义默认情况下在这整个程序中是extern的2.静态函数:函数前加上static 实参与形参之间的值传递 #include<iostream.h>void main(){ int a = 5, b= 10;void swap(int x , int y );cout << a << ' ' << b >> endl; }void swap(int x , int y){ int temp ;temp = x;x = y;y = temp;}
第五章 函数的调用 #include<iostream.h>float add(float x,float y){ float z; z = x + y; return (z);} void main(){ float a,b,c;cin >> a >> b;c = add(a,b);cout << "sum is : " << c ;}递归函数调用 函数直接 或间接调用自身递归的基本因素: 1.递归的公式 2.递归停止的条件 大规模的问题 简化成小问题 float fac(int n){ float f; if(n<0) cout << "n < 0,data error!"; else if(n==0||n===1) f =1; else f = fac(n-1)*n; return (f); }
if()语句switch()语句 1.执行顺序 2.case分支可包含多个语句 3.表达式,判断值都是int型或者char型 4.若干分支执行内容相同可共用一组语句for()语句 for(循环初始化;虚幻条件;循环参数调整) do{ } while()语句 数组变量的定义 int a[10]; double a1[100]; int a2[16],n,a3[25],m; void f(int m , int n) { int b[n];//error b的大小依赖于形参 }数组的初始化 int a[5] = {1,2,3,4,5,6};错误int a[] = {1,2,3,4,5,6,};正确
自增自减运算表达式 int b = ++a++;//错误的表达式 a++非左值int c = (++a)++;//这样是正确的int d = ++++a;//正确 int f = (--)a--;//正确自动类型转换int -->long-->float-->double->long double 赋值类运算表达式“=”两侧类型不一致时,要进行类型转换 其他运算符 sizeof(类型名)sizeof(表达式)
第二章1.整型数据 short(short int ,signed int ,signed short) 2Byte -32768~327672.整型常量 进制转换------3.整型变量 int x,y; int i = 0 , j = 1 ;4.字符类型 单字节长度的整型,因此常用字符型定义值较小的整数5.转义字符6.字符型与整型的关系字符数据和整型数据可以通用 可以按字符形式输出,也可以按整型输出
第一章C++语言概述 1.1第二章 基本数据类型和表达式1. 数据类型精度问题引用问题自定义类型问题
数据类型1.整型:2字节 有符 无符十进制 八进制(以0开头) 十六进制(以0x开头)2.字符型:1字节 以ASCII码存储 \n \\ \后加八或16进制
高级语言工作方式 解释方式: 源程序通过解释程序解释运行优点:可运行多种平台缺点:速度慢 编译方式:源程序通过编译程序生成目标程序,链接后生成的可执行文件优点:速度快缺点:只能用于特定的平台
类是一种新的数据类型它是将不同类型的与这些操作封装在一起的集合体。相似对象的集合体 类是抽象的 对象是具体的 对象是类的实例程序=对象+对象+对象。。。。。class类型{private://protected://只能被内部的成员函数访问public:};在类里面定义的不能初始化
第一课 共3天
在编译系统找匹配的重载函数时,返回类型是不起作用的,即几个重载函数,只有在函数形参类型和个数两者至少有一个不同时才行!才能找到相应的函数!
引用:就是对变量另外取名,函数调用时会改变它的值int &a=n;//将n另取名为a