首页 > 其他分享 >指针的相关知识

指针的相关知识

时间:2024-06-30 22:56:55浏览次数:3  
标签:const 函数 int 知识 Add 相关 函数指针 指针

1.指针函数

        是一个函数,并且是一个返回值为指针的函数。
        
        注意:不能返回局部变量的地址        

char *MyStrcpy(char *dest, char *src){  };

2.函数指针

        函数指针是用来存放函数的地址,这个地址是一个函数的入口地址,而且是函数调用时使用的起始地址。
        
        函数指针变量说明的一般形式如下:
                 数据类型 (*函数指针名称)(参数说明列表);
                 int (*p)(int x, int y);

        函数指针调用:
            指针变量名(实参);


eg:
    int Add(int x, int y)
    {
        return x+y;
    }
      
    p = Add;  //p = &Add;

    printf("%d\n", p(10,20));  //----30  
    printf("%d\n", (*p)(10,20));  //----30

3.函数指针数组

        是一个数组, 数组元素为一个一个的函数指针。

        函数指针数组是一个保存若干个函数名的数组。
        一般形式如下:
                数据类型    ( * 函数指针数组名称 [大小] ) ( 参数说明列表 );

        其中,<大小>是指函数指针数组元数的个数,其它同函数指针。

        
int Add(int x, int y); 
int Sub(int x, int y);
int Mul(int x, int y);
  

int  (*p[3])(int x, int y);
p[0] = Add;
p[1] = Sub;
p[2] = Mul;


p[0](10,20);     

4.递归函数

是一个函数。  自己调用自己;        
     递归是一种思想,算法。用于解决一这些回溯思想的问题、递归问题.

        
    递归的优点:可以减少代码数量。 

5.回调函数

        funcA    funcB
    函数B的参数,参数有一个函数指针, 函数A的地址通过函数指针传入函数B中,
    此时函数B拥有了调用函数A的能力, 在特定情况下,调用了函数A。
    那么此时称函数A叫回调函数  
        
 
        回调函数的作用:1.实现泛型、多态;
                                     2.减少重复性的代码            

6.const关键字

1.修饰局部变量:把局部变量变为常量,需要在初始化时赋值
    
             const int a = 10;

2.修饰指针
            int a = 10;
            int *p;
   
            指针常量:指针的指向不能修改, 指针指向的内容可以修改
                int  * const p;
    
            常量指针:指针的指向能修改, 指针指向的内容不可以修改    
                const int *p;
                int const *p;

            const int * const p;            

标签:const,函数,int,知识,Add,相关,函数指针,指针
From: https://blog.csdn.net/m0_49236682/article/details/139971504

相关文章

  • 指针的相关知识
    1.行指针 行指针 是一个指针,指向的元素是一维数组。     存储行地址的指针变量,叫做行指针变量。形式如下:           存储类型 数据类型 (*指针变量名)[表达式:列数];     例如,inta[2][4];    int(*p)[4];  e......
  • 知识图谱导论复习提纲
    KG1.知识图谱的定义以及知识图谱的特点?定义知识图谱就是一种用于表示知识的图结构模型,其中节点表示实体,边表示实体之间的关系,它以图的形式将知识组织起来,通过节点和边的连接,形成一个结构化的知识表示系统。特点结构化表示:知识图谱将知识以三元组的形式进行结构化表示,使得知......
  • 关于函数指针和结构体一起的用法
    想到单片机中的中断处理不好多样化,一直通过函数指针传递,今天想通过函数指针实现多样化,在中断中放一个要执行的函数指针,在外面可以改变此指针指向的函数。配合结构体的使用,感受到面向对象中class的存在了。typedefint(*pFunc)(int);//定义一个函数指针类型intadd(inta){......
  • 二、常量指针与指针常量
    一、常量指针:又叫常指针,可以理解为常量的指针,即也是指针,指向的是个常量(指向的对象是常量)。指针变量可以修改,但是不能通过指针来修改其指向的对象。代码形式:intconst*p;constint*p;举例:1#include<stdio.h>23intmain()4{5inta=10;6const......
  • 第二章 MATLAB入门知识 第三节
    常见的特殊变量:特殊变量描述ans系统默认的用于保存运算结果的变量名pi圆周率π>>pi ans=3.1426inf/-inf无穷大和负无穷大,注意1/0=inf正常0不能做分母但是MATLAB可以NaN不定值或缺失值。例如计算0/0或0*Inf会返回NaNi和j负数中的虚数单位,例如3+4i和3......
  • 第二章 MATLAB入门知识 第二节
    MATLAB的帮助系统【以sum函数为例】方法1:Documentation-MATLAB&Simulink-MathWorks中国方法2:使用doc命令>>docsum方法3:使用help命令>>helpsum方法4:使用edit命令>>editsum小技巧:代码中%开头的语句是MATLAB的注释信息,在运行代码时注释信息不会被执行。MATLAB......
  • python 列表相关操作
    访问元素index(x):返回列表中第一个值为x的元素的索引。pythonfruits=['apple','banana','cherry']print(fruits.index('banana'))#输出:1count(x):返回列表中值为x的元素的个数。pythonnumbers=[1,2,2,3,2,4]print(numbers.count(2))#输......
  • The this Pointer (this 指针) and An Array of Objects (对象数组)
    ThethisPointer[this指针]andAnArrayofObjects[对象数组]1.The`this`Pointer(`this`指针)2.AnArrayofObjects(对象数组)References1.ThethisPointer(this指针)classStock{private: doubletotal_val_; ...public: double......
  • git基本知识
    文件在本地仓库的状态常用命令:gitstatus查询状态gitadd添加到暂存区,可以使用通配符*gitcommitdesc:1提交到本地仓库,只能提交暂存区的文件,该次提交的描述gitcommit-a-mdesc:2表示直接提交,不用放到暂存区gitlog查看提交记录gitreset--soft1234......
  • 儿童过敏方面指南及相关资料
    数据格式:pdf数据内容:近几年儿童过敏治疗方面指南、专家共识及相关资料,适合医学生、儿科从业人员、家长等人员查阅。#儿科  #儿科医生  #儿科科普  #临床医学  #儿科学  #过敏  #过敏性鼻炎  #儿童过敏  #儿童过敏性鼻炎......