(积累)指针

本文介绍了指针的基本概念,包括内存地址的定义、取地址操作以及解引用的过程。通过示例展示了如何使用指针访问数组,并解释了函数返回数组的情况。理解这些概念对于深入理解C/C++程序的内存管理和数据操作至关重要。
摘要由CSDN通过智能技术生成

一、概念定义

1、指针即地址

计算机中所有数据必须放置内存中,不同类型的数据占用的字节数也不一样,例如32位整型int占据4个字节,64位整型long long占据8个字节,字符型char占据1个字节。

为了正确地访问这些数据,必须为每个字节都编上编号,每个字节地编号是唯一的。

把内存中字节的编号称为地址或指针。地址从0开始依次递增,对于32位环境下,程序能使用的内存位4GB,最小的地址为0,最大的地址为0xFFFFFFFF。

2、取地址

char x = 'o';
char *p = (x)的地址;
char x = 'o';
char *p = &x;

数组中p指向第一个元素的地址,a也是数组第一个元素的地址。

int a[] = {5,2,0,1,3,1,4};
int *p = a;

3、解引用

解引用是取地址的逆操作,即根据给定的地址,获取它的值。

int a;
int *p = &a;
a == *p;

 4、函数返回数组

int * getRandom( )
{
  static int  r[10];
 //......................
 
  return r;
}
int main ()
{
   // 一个指向整数的指针
   int *p;
 
   p = getRandom();
//
   ........................
 
   return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值