• 网站刚刚上线,难免有不足的地方,敬请谅解!欢迎提出宝贵意见!

  •    3年前 (2015-07-28)  C基础 |   4 条评论  102 
    文章评分 3 次,平均分 5.0

    洋洋的C语言之旅-指针声明赋值强制转换及指针与函数

    1、指针是变量,它存储的值是内存里的地址。

    2、声明:类型标识符表明指向变量的类型,而*表示该变量为为指针

    类型标识符 *指针变量的名称;//声明指针的格式

    int *p;//*p含义是指针,int *p是指针指向内容的类型为int型
    int **p;// **p含义是 *p指向的是指针, int **p含义是指针指向int类型的数据
    char *m;//m指向一个字符变量类型指针

    3、指针赋值及指针强制转换(声明指针之后一定要赋值,否则它会随机指向内存的任意位置,就是我们通常说的野指针)

    int m;
    int *p;

    p=&m;//给p赋值
    *p=3;//m=3给p所指向的内存赋值

    如果指针和指针的表达式不一样,需要进行强制类型转换。语法格式是:例如(int *)p;

    强制转换仅仅改变了它的指针类型,其它都不变。

    4、指针与函数

    实例:

    int P(char *,int);

    int (*p1)(char *,int);//声明一个指向函数的指针p1

    p1=P;

    int m=(*p1)("zuguoninhao",11);//通过函数指针调用函数,用指针表达式来作为实参,实现了对函数P的调用。

    注意:两个指针不能进行加法运算,但是在类型相同的情况下们可以进行减法运算。
    在函数调用过程中,指针类型的实参和形参要类型一致 ,当不一致时要进行强制转换。

     

    本文原始地址:http://www.coderonline.net/palace-tour-pointer-assignment-in-c-language-casts-and-pointer-to-function.html

    本站所有文章,除特别注明外,均为本站原创,转载请注明出处来自http://www.coderonline.net/

    否则保留追究法律责任的权利!

    关于

    发表评论

    表情 格式
    1. 学习贵在坚持,希望你能长期坚持

      raul 评论达人 LV.5 3年前 (2015-07-29) [0] [0]
    2. 图画的不错,浅显易懂

      Michael 评论达人 LV.5 3年前 (2015-07-29) [0] [0]
    3. 学习学习!重拾C。

      Coder 评论达人 LV.5 3年前 (2015-07-29) [0] [0]
    4. 好,表示学完的C全还给老师了

      nothing 评论达人 LV.5 3年前 (2015-07-28) [0] [0]
    切换注册

    登录

    忘记密码 ?

    切换登录

    注册