黑马程序员技术交流社区

标题: 关于指针的内容整理-->精辟 [打印本页]

作者: zhuanshu1458    时间: 2015-11-9 21:15
标题: 关于指针的内容整理-->精辟
         arr3==&arr[0]==&arr[0][0]==&arr3==arr[0]==arr[0][0]
  • 二维数组指针变量说明的一般形式:把二位数组变成用指针来访问
    • int arr4[j];
    • int(*p4)[j]=arr4  //定义一个数组指针,指向含j个元素的一维数组
    • arr4=&arr4[0]=&arr4[0][0]=arr[0]
    • (*(p4+i)+j)获取二位数组的每个元素
  • 字符串指针
    • char *str = “hallo world”;   //str是一个指针
    • sizeof(str)==8;
    • strlen(str)==“字符长度”==11;
    • 第i个字符的值为*(str+i);
    • 字符串指针的知识点
      • char *str;         //野指针
      • char *str=NULL;    //这个指针不可用
      • str=malloc(100)    //给指针分配100个字节
      • char ch3[100]; char *str=ch3;   //也可以用
  • 字符数组
    • char[10]=“hahaha”;默认最后一个/0
    • char arr5[4][6]={“halo”,”editor”,”make”};
    • 最后一个默认/0  
  • 指针函数:参数为指针的函数
    • int *p6=max(&a,&b);   //搞不懂
  • 函数指针
    • int(*p)(int a,int b);    //初始化  //返回值是一个指针
    • p=sum;      ⬅️int sum(x,y);       //p为指向函数的首地址
    • int max=p(a,5);                   //a可以是一个地址
    • int getMax(int *p,int len){};     //p传递一个数组名























欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2