c巴拉巴拉 2023-09-06 13:57 采纳率: 87.5%
浏览 10
已结题

声明指针变量?指针变量指向地址?

img


#include <stdio.h>

const int MAX = 3;

int main ()
{
   int  var[] = {10, 100, 200};
   int  i, *ptr;

   /* 指针中的数组地址 */
   ptr = var;
   for ( i = 0; i < MAX; i++)
   {

      printf("存储地址:var[%d] = %x\n", i, ptr );
      printf("存储值:var[%d] = %d\n", i, *ptr );

      /* 移动到下一个位置 */
      ptr++;
   }
   return 0;
}

声明指针变量时为什么(int i,ptr;)int i后面紧跟ptr,写成ptr不应该是解引用吗。不是应该是int ptr吗,int* 表示指针变量类型,ptr为指针变量名。

ptr=var,为什么会是这样呢,不应该是ptr=&var吗,指针变量ptr指向取地址var的地址吗。难道是因为数组名var表示整个数组地址,所以与&var相等?

  • 写回答

3条回答 默认 最新

  • 浪客 2023-09-06 14:01
    关注

    int a,b,*c; 可以理解为 int a,int b,int *c

    数组名本身是个指针。因此可以ptr=var

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月14日
  • 已采纳回答 9月6日
  • 创建了问题 9月6日

悬赏问题

  • ¥15 虚拟机检测,可以是封装好的DLL,可付费
  • ¥15 kafka无法正常启动(只启动了一瞬间会然后挂了)
  • ¥15 开发一个类似百度网盘的软件,在主页 文件列表点击进入文件夹,在文件夹里面还有文件夹,代码该怎么写?
  • ¥30 使用matlab将观测点聚合成多条目标轨迹
  • ¥15 Workbench中材料库无法更新,如何解决?
  • ¥20 如何推断此服务器配置
  • ¥15 关于github的项目怎么在pycharm上面运行
  • ¥15 内存地址视频流转RTMP
  • ¥100 有偿,谁有移远的EC200S固件和最新的Qflsh工具。
  • ¥15 有没有整苹果智能分拣线上图像数据