zoukankan      html  css  js  c++  java
  • c语言指针与结构体

    *:指针运算符,指向对象的值(地址的指令

    &:取地址运算符,(物理地址,实际地址

    size of:用于获取变量或者数据类型的长度                                         

    只有相同类型的指针变量才能相互赋值

    空指针用NULL

    字符串结束标志''

    1.指针交换

    从键盘输入两个整数到a、b,按由大到小输出

    #include<stdio.h>

    void main( )

    {

    int a,b,*pa=&a,*pb=&b,*p;                          /*定义指针变量pa、pb,并进行初始化*/

    scanf("%d%d",&a,&b);

    if(*pa<*pb)

    p=pa;                                                           /*进行指针交换*/

    pa=pb;

    pb=p;

    }

    printf(" a=%d,b=%d ",a,b);

    printf(" max=%d,min=%d",*pa,*pb);        /*pa指向大数,pb指向小数*/

    }

    二级指针的定义:数据类型      * *指针变量(int a,*p,**pp;)

    一级指针与二级指针的区别:p直接指向a(p=&a),*p是一级指针引用;pp直接指向p,再通过p指向a,pp间接指向a,**p是二级指针(pp只能指向指针变量)

    指针函数的定义:类型标识符   *函数名(形式参数表)【int  *fun(int a,int b)       {函数体语句}】

    返回指针或地址语句:return(& 变量名);或 return(指针变量)

    住:指针函数的返回值一定是地址,并且返回值的类型要与函数类型一致

    字符串函数strcat( ),strcpy( )

    动态存储分配函数malloc( ),calloc( )

    指向函数的指针变量的定义:类型标识符  (* 指针变量名)();【int     (*p)();

  • 相关阅读:
    ASP.NET MVC 扩展相关
    新.NET开发十大必备工具
    c#调用存储过程两种方法
    TweakUI取消pc喇叭声
    baidu mp3竟然还加密,太扯了
    NTLM在使用代理服务器的情况下,第三次握手可能出错
    httpclient解析gzip网页
    eclipse不能自动编译工程的解决方法
    bat设置环境变量
    java的ZipOutputStream压缩文件的两个问题(乱码和每次zip后文件md5变化)
  • 原文地址:https://www.cnblogs.com/296389183yy/p/10533492.html
Copyright © 2011-2022 走看看