C7.cpp
- Arr[i]==*(ar+i) &arr[i]==ar+i
- 编译过程的最终产品是可执行程序------由一组机器语言指令组成
- 内联函数的优点是速度快,但是会占用很多内存,若是在程序的十个地方调用一个内联函数,则需要10个不同的副本
- 如果执行函数代码的时间比处理函数调用的机制的时间长,则节省的时间将只占过程的很小的一部分,否则节省的时间将会有用。。另外,这个过程非常快,除非要调用一个函数多次才会有很大的效果
- 头文件typeinfo中包含的函数typeid()将会返回数据类型,typedef可以减少输入量,让代码易于理解
a) typedef int a; b) int main() c) { a s; d) if(typeid(s)==typeid(int)) e) cout<<true; f) else cout<<false; g) }
- Const的地址不能够赋给常规指针(若是非要这么做可以使用强制类型转换符),常规指针赋给const地址是可以的
- Const int *pt=&a;-------------只能防止修改pt指向是值,而不能防止修改pt的值
- Int* const f=&a;----------f只能指向a,也允许使用f来修改a的值
- 函数参数不能是数组
- int a[][4]和int (*a)[4]都是声明一个由四个指针组成的数组
- 如果a()是一个函数,那么a就是该函数的地址,注意要传递的是函数的地址还是返回值
- 函数指针(可以做参数) double (*o)(int)==========(*o)是一个函数,那么o就是函数指针
- 使用函数指针的方法
a)
int (*p)(int); b) int s(int a){ c) return a*10; d) } e) int main() f) { g) int a; h) cin>>a; i) p=s; j) int x=(*p)(a); k) cout<<x<<endl; l) }
m) int *(*p)(int);----------此时指的是这个指针的类型是int* n) int ss[8]; o) int* s(int a){ p) return &a; q) } r) int main() s) { t) p=s;}
你若盛开,清风自来...