C7.cpp

时间:2023-03-09 06:32:39
C7.cpp
  1. Arr[i]==*(ar+i)         &arr[i]==ar+i
  2. 编译过程的最终产品是可执行程序------由一组机器语言指令组成
  3. 内联函数的优点是速度快,但是会占用很多内存,若是在程序的十个地方调用一个内联函数,则需要10个不同的副本
  4. 如果执行函数代码的时间比处理函数调用的机制的时间长,则节省的时间将只占过程的很小的一部分,否则节省的时间将会有用。。另外,这个过程非常快,除非要调用一个函数多次才会有很大的效果
  5. 头文件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)      }
  1. Const的地址不能够赋给常规指针(若是非要这么做可以使用强制类型转换符),常规指针赋给const地址是可以的
  2. Const int *pt=&a;-------------只能防止修改pt指向是值,而不能防止修改pt的值
  3. Int* const f=&a;----------f只能指向a,也允许使用f来修改a的值
  4. 函数参数不能是数组
  5. int a[][4]和int (*a)[4]都是声明一个由四个指针组成的数组
  6. 如果a()是一个函数,那么a就是该函数的地址,注意要传递的是函数的地址还是返回值
  7. 函数指针(可以做参数)  double (*o)(int)==========(*o)是一个函数,那么o就是函数指针
  8. 使用函数指针的方法

a)

  int (*p)(int);

b)      int s(int a){

c)         return a*;

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[];
o) int* s(int a){
p) return &a;
q) }
r) int main()
s) {
t) p=s;}