指针和数组的不同

1. 指针和数组保存的数据内容不同

指针保存指针变量,即保存数据的地址;数组保存同一类型数据的值

2. 指针用于动态数据结构,就是说指针保存的数据可以改变;而数组用于存储固定数目且数据类型相同的元素即一旦数组的大小定了就不容易变了;

3. 指针用malloc()和free()来分配空间和释放空间,而数组是隐式分配和删除;

4. 指针通常指向匿名数据,而数组自身就是数组名

5. 数组名作为函数参数时就等价与指针,某种意义可以说他们等价的,但是一般情况下定义一个数组,则数组名就是常量是不能被改变的,一旦作为函数参数传递,代表地址,则它本身就变为指针变量。显然和我们认识的数组名有所违背。

例子:

int arr[]

arr++;

上面两行在一般的主函数中就会出现编译错误

int fun(int arr[])

arr+;

上面两行作为函数参数是可以改变的

指针和数组的相同点

1. 作为函数参数时数组名就等于指针   void fun(int arr[])

解释:函数形参int arr[]与int *arr是等价的,也就是通常我们说的数组名代表数组首元

数组和指针的区别与联系相关推荐

  1. C++数组与指针的区别

    数组与指针的区别 前言 修改内容上的差别 运算符sizeof 可以计算出数组的容量(字节数) sizeof(p),p为指针得到的是一个指针变量的字节数,而不是p所指的内存容量 计算数组和指针的内存容量 ...

  2. 一道题目让你看出C语言的数组与指针的区别:

    文章目录 题目概述: 输入格式: 输出格式: 输入输出样例: C语言题解: 错误的运行结果: 错误问题的分析与定位: C库的malloc函数讲解: 函数原型: 函数形参: 函数的返回值: 内存的释放: ...

  3. 面试笔记 | 数组与指针的区别

    1. 简述数组与指针的区别 数组是直接访问数据的. 指针是间接访问数据的. 定义: 数组是类型相同.数目固定的若干个变量的有限集合,它存放的是数据. 指针是变量的地址,存放的是变量的地址. 存储方式: ...

  4. 数组与指针的区别与联系

    1 引言 数组并非指针,在初学C语言时,我们会觉得"数组和指针是相同的",实际上,这是一种非常危险的说法,并不完全正确.下面完整地解释一下数组什么时候等同于指针,什么时候又不等同于 ...

  5. C语言学习笔记---数组和指针的区别

      在平时使用数组和指针的时候,感觉他们的使用很类似.那么数字和指针在使用的过程中到底有什么区别呢?   下面通过一个例子来简单分析一下. char str1[] = "abcdef&quo ...

  6. 数组和指针的区别与联系(详细)

    一.概念 数组:数组是用于储存多个相同类型数据的集合. 指针:指针相当于一个变量,但是它和不同变量不一样,它存放的是其它变量在内存中的地址. 二.赋值.存储方式.求sizeof.初始化等 1.赋值 同 ...

  7. 深入理解数组与指针——原因在于”退化“

    (一) 数组与指针本质是不同的.如下图所示 char a[]="hello"; char *p="hello"; 上述代码的初始化结果如下图所示: a就是一个数 ...

  8. 十一:数组和指针的关系?

    1. 数组和指针的区别: 概念: 数组:数组是用于存储多个相同类型数据的集合,数组名是首元素的地址. 指针:指针相当于一个变量,但是它和普通变量不一样,它存放的是其他变量在内存中的地址,指针名指向了内 ...

  9. C语言指针数组与数组指针的区别

    C语言指针数组与数组指针的区别 首先,顾名思义 数组指针是一个指针,是指向一个数组的指针,如 int (a*)[5]:这就是一个指向含有5个元素的数组的指针 指针数组是一个数组,它包含的元素全是指针变 ...

  10. c/C++计算int / int *数组的长度;sizeof(指针),sizeof(数组名)的区别

    1.计算int *数组长度: int arrayVlenth(float *p) {int len = 0;while (*p){p++;len++;}return len; } sizeof(指针) ...

最新文章

  1. 用计算机问你叫什么名字,计算器女友与男子谈情说爱 一分钟发出各种甜言蜜语...
  2. mac安装软件管理Android手机,Mac如何管理Android手机:这方式很得体
  3. CenOS7中使用Docker安装配置Redis(数据持久化与数据卷映射)
  4. kafka整理笔记笔记
  5. HANA report creation implementation go through
  6. npm安装iViewUI框架 - cmd篇
  7. HDwiki 6.0 图片大图不能正常显示的解决方法
  8. 300plc与组态王mpi通讯_MPI(DP)-ETH以太网转换器使用手册
  9. 阿里+北大 | 在梯度上做简单mask竟有如此的神奇效果
  10. Android] AndroidManifest.xml文件解析
  11. ubuntu安装sogou输入法、及安装完成后的配置
  12. 京东超市 导航条布局
  13. 三大主流芯片架构特点
  14. 电路设计之--滤波电容选取
  15. AD网络标号高亮设置
  16. 133、H3C交换机恢复出厂和各种基本配置
  17. 《从点子到产品:产品经理的价值观与方法论》读后感
  18. Pony.ai 自动驾驶
  19. 微信小程序简单demo
  20. solidworks怎么画螺纹

热门文章

  1. 网络信息安全、渗透学习
  2. Linux 上的云计算平台和应用
  3. 用matlab作图工具,matlab绘图工具箱使用(二)
  4. win10资源管理器如何删除用户文件夹
  5. 编程思想-0x00架构
  6. DARTS源码阅读(持续更新中...)
  7. JavaWeb(servlet+jsp/springboot+html) 教务管理系统
  8. MySQL数据库集群之PXC方案---PXC简介
  9. 国嵌memdev驱动试验
  10. 19.Win10安装Linux(Ubuntu 20.04)双系统