`

数组和指针

 
阅读更多

  1. 数组初始化问题:当给数组初始化过程中提供的数据少于数组长度时,会按照元素的顺序依次给数据元素初始化,剩下的元素赋值为0;无论是一维数组亦或是多维数组,都是这样。

 

 

 

指针加1操作,对于数组而言,地址会增加到下一个元素的地址,而不是下一个字节。推而广之,一个指针要知道它所指向对象的类型,需要知道这个对象存储所采用的字节数,从而在指针运算过程中,达到目的。

 

  1. 指针的数值是它所指向对象的地址。若是多字节的对象,一般指向首字节地址。
  2. *可以用来取得对象的值
  3. 指针+1操作,在原来指针的值上加上它所指向对象的字节大小 。
dates+2=&date[2];
*(dates+2)=date[2];

 

 

使用数组参数(将数组传给函数作为参数):2种方式

 

  1. int sum(int * ar,int n)
  2. int sum(int ar[],int n)

只有在函数声明形参变量的时候才可以使用第2种形式;第二种形式标明该指针是指向一个数组中的元素

 

使用函数参数:

将数组传递给函数,要传入数组的首地址和数组长度,换做指针需要传入数组的首指针和末尾指针

 

首指针就是数组元素名

末尾指针就是数组元素名+数组长度 

 

 

 

指针操作:

 

  1. 赋值运算:
  2. 求值运算:
  3. 取指针地址:
  4. 将一个整数加给指针
  5. 增加指针的值
  6. 从指针中减去一个整数
  7. 减小指针
  8. 求差值
  9. 比较

若 希望 不修改 数组元素的值 ,可以 使用const关键字 来做限定 ,const并不是限定 原来数组不可以修改,固定不变 ,只是说函数在处理数组时,把数组当作固定不变的,从而阻止函数对于数据进行修改 ;若要修改数组元素,不要加上const限定 。


有关于 const:
  1. 指向const的指针不可以修改数值 :const double *p=rates;p指针指向数组p首元素 ,此时不可以通过指针p对数组进行修改,因为p指向的是常量;但是可以通过数组名+下标的方式对数组元素进行更新 。
  2. p的地址可以进行修改 ,如++操作
  3. 通常把指向常量的指针用作函数参量,标明函数不会用这个指针来修改数据如:void show_array(const int *,int )

 

 

 

 

 

分享到:
评论

相关推荐

    数组和指针练习题目(精选)

    数组和指针练习题目(精选) 在编程语言中,数组和指针是非常重要的概念,它们的应用非常广泛,理解基础是非常必要的。本节将通过多种练习题目来加深对数组和指针的理解。 指针基础 指针是一种特殊的变量,它可以...

    数组与指针区别(很全面)

    本文旨在澄清关于数组名是否等同于指针这一常见的误区,并通过具体的代码示例来深入探讨数组和指针之间的关系及其差异。 #### 二、数组与指针的基本概念 1. **数组**: - 数组是一系列相同类型的数据项的集合。 ...

    数组和指针的区别

    虽然数组和指针有相似之处,但在实际编程中需要注意以下几点: - **类型安全**:在使用指针时应确保指针的类型与所指向的数据类型一致,避免类型不匹配导致的问题。 - **内存泄漏**:使用动态内存分配时要注意及时...

    10 数组和指针.pdf

    10 数组和指针.pdf

    数组与指针的艺术.doc

    《数组与指针的艺术》是一篇深度探讨C/C++中数组和指针特性的文章,旨在帮助读者理解和掌握这两种核心概念。文章指出,数组和指针是C/C++语言的灵魂,它们提供了对底层操作的强大支持,是语言效率的保证。然而,由于...

    数组和指针学习资料

    在编程世界中,数组和指针是C/C++等低级语言的核心概念,它们的理解与熟练运用对于程序设计至关重要。本学习资料集包含了对数组和指针的深度解析,旨在帮助学习者彻底掌握这两个概念。 首先,我们来深入探讨数组。...

    C语言数组和指针

    **多维数组指针:** ```c int (*p)[3]; // p是指向含有3个整型元素数组的指针 int (*p)[3] = &a; // 将数组a的地址赋给p ``` **函数指针:** 函数指针是一种特殊的指针类型,它可以存储函数的地址。 ```c int add...

    数组和指针之间的区别与联系

    在C语言中,数组和指针是两个非常重要的概念,它们之间既有明显的区别,也有紧密的联系。数组是一种数据结构,而指针则是一种特殊的数据类型,用于存储内存地址。理解这两者的差异和关联对于深入学习C语言至关重要。...

    数组的指针和指向数组的指针变量

    数组的指针和指向数组的指针变量 数组的指针和指向数组的指针变量是编程语言中一个重要的概念。数组的指针是指向数组在内存中的起始地址,而指向数组的指针变量是指向数组元素的指针变量。 概念: * 数组的指针:...

    数组和指针使用及区别详解

    在编程中,数组和指针是两种非常基础且重要的概念,它们在处理数据时起着核心作用。数组是一组相同类型的元素的集合,通过索引来访问每个元素。指针则是一个变量,它存储的是内存地址,这个地址通常指向一个变量或...

    C++程序设计语言中数组和指针的探讨

    ### C++程序设计语言中数组和指针的探讨 #### 一、引言 在C++编程语言中,数组和指针是两个重要的基础概念,它们不仅被广泛应用于各种编程场景,也是理解更复杂数据结构(如链表、树、图等)的基础。正确理解和运用...

    C语言数组指针(指向数组的指针)_C语言中文网1

    总的来说,理解和熟练运用数组指针是掌握C语言的关键技能之一。它不仅能够帮助我们更有效地操作数组,还能在编写高效的代码时发挥重要作用。在深入学习C语言指针时,还会涉及到二级指针、指针数组、字符串指针、函数...

    C语言程序设计第4章数组和指针

    在C语言中,数组和指针是编程时非常重要的概念,尤其在处理大量数据或实现高效算法时。在第四章“数组和指针”中,我们主要探讨了以下几个知识点: 1. **数组的概念**: 数组是一组相同类型的变量,它们按照下标...

    浅议C语言中数组和指针的互操作

    浅议C语言中数组和指针的互操作浅议C语言中数组和指针的互操作浅议C语言中数组和指针的互操作浅议C语言中数组和指针的互操作

    数组和指针测试数据oj.rar

    在编程领域,数组和指针是C/C++等低级语言中的核心概念,它们在程序设计中扮演着至关重要的角色。数组是一种数据结构,可以存储同类型的数据集合,而指针则是存储内存地址的变量,它能够间接访问和操作数组元素。本...

    C++一维数组和指针的关系总结

    在C++中,一维数组和指针之间存在着密切的关系。本文将从不同角度对这一关系进行详细解释,并通过实例代码帮助理解。 #### 数组名作为地址 首先,我们需要明确的是,在C++中,数组的名字实际上就是该数组第一个...

    数组和指针概念的联系与区分的经典文档.pdf

    在深入探讨之前,首先要明确指针和数组的基本定义。 指针,按照C/C++标准,是一种类型,它可以表示对内存中某个实体的引用。指针类型由"pointer to"和它所指向的类型组成,如"pointer to int"(int*)。指针可以...

Global site tag (gtag.js) - Google Analytics