zoukankan      html  css  js  c++  java
  • C语言中的指针 &与*

    1. 指针:

    指针即地址;指针实现了变量的间接访问方式,变量的指针即变量的地址,存放变量地址的变量是指针变量;

    & -- 取地址运算符;取变量的地址;

    * -- 指针运算符(或称“间接访问”运算符);取指针变量(地址)的内容;

    int i =3;

    int *p; --定义指针变量p

    p = &i;   -- 等价于 *p = 3;

    2. 指针与数组:

    数组名即数组的起始地址,即指针(note:不过数组名代表的是一个固定地址,或者可以称为指针常量,不能再被赋值,例如a++等操作时没有意义的,当然作为实参传入函数后,在参数内可以完全当做指针变量来用);

    int a[10];

    int *p;

    p = &a[0];

    p = a;

    *p = 1 ; 等价于 a[0] = 1;

     p+i == a+i == &a[i];

    *(p+i) == *(a+i) =a[i];

    p[i] == *(a+i)

    函数的形参与实参:

     在定义函数时,函数名后面括弧中的变量名称为形参,在主调函数中调用一个函数时,函数名后括弧中的参数称为实参;只有发生函数调用时,形参才被分配内存单元,调用结束后形参的内存单元也被释放;实参变量对形参变量的数据传递是值传递,即单向传递,只由实参传给形参,不能形参传回给实参;

  • 相关阅读:
    /usr/bin/ld: 找不到 /usr/lib64/libatomic.so.1.0.0
    linux Version mismatch error. This is libtool 2.4.6 Debian-2.4.6-2
    java播放语音文件
    java冒泡排序
    java递归求和
    常见芯片标号说明
    keil5 新建 stm32项目 步骤
    st-link 升级固件时报错“is not in the DFU mode”
    数码管 段选位选
    C51 定时器
  • 原文地址:https://www.cnblogs.com/end/p/1765738.html
Copyright © 2011-2022 走看看