
正文
c语言数组指针跟指针数组,c语言数组指针和指针数组
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
关于C语言中数组指针和指针数组的问题
数组指针,是指向数组的指针。通常所说的数组指针,只是一个指针,他只能存放一个地址。一般用于多维数组。举例说明,假设有一个四行五列的二维数组A,C语言认为它是由四个五元素的一维数组首尾相连组成的。
p是一个指针,他指向一个char型的变量(变量名其实就是一个地址)或char型数组,p里边存的是变量的地址或数组的首地址。注:要引用一个指针变量,必须先给指针赋初值。p是值存储在p这个指针所指向地址的值。
数组指针是c语言中的一个重要概念,涉及到指针和数组的使用,数组指针可以理解为一个指针,其指向一个数组,也就是说,数组指针存放的是数组首地址,也就是数组第一个元素的地址。
相关问答
Q1: C语言指针数组指针怎样理解?
指针数组:就是存储指针的数组。数组指针:就是指向数组的指针。指针:本质就是一个int型变量,含义:一个内存地址。举例:int *p[10] 指针数组。原因:因为[的优先级比*高,p先和[结合,所以是指针数组。
该指针指向的内存区就是数组第0号单元,该指针自己占有单独的内存区,注意它和数组第0号单元占据的内存区是不同的。该指针的值是不能修改的,即类似array++的表达式是错误的。
数组名并不是一个普通的变量,而是一个指向数组首元素的指针。也就是说,我们可以用数组名来初始化一个对应类型的指针。虽然数组名是指针,但它是一个指针常量。也就是说,不带下标的数组名不能作为左值。
数组是用指针方式实现的,但数组值是一个常量,即不能改变数组的首地址,而指针是一个变量,可以改变它的值;如:数组 a和指针p,p=a+1;是合法的,但a=a+1;是不合法的。
指针函数——返回指针的函数;函数指针——指向函数的指针;指针数组——每个元素都是指针的数组;数组指针——指向数组的指针;函数指针数组——每个元素都是指向函数的指针的数组。
一维数组可以认为是一个指针,二维数组可以认为是指针的指针。实质都是指针类型,就是地址。
Q2: c语言指针,指向数组的指针、指向指针数组的指针、指向数组的指针的指...
1、第一,指针变量的值可以改变,即它可以随时指向不同的数组或同类型变量,而数组名自它定义时起就确定下来,不能通过赋值的方式使该数组名指向另外一个数组。
2、指针:指针很灵活,它可以指向任意类型的数据。指针的类型说明了它所指向地址空间的内存。指针:由于指针本身就是一个变量,再加上它所存放的也是变量,所以指针的存储空间不能确定。
3、该指针指向的内存区就是数组第0号单元,该指针自己占有单独的内存区,注意它和数组第0号单元占据的内存区是不同的。该指针的值是不能修改的,即类似array++的表达式是错误的。
4、数组是用指针方式实现的,但数组值是一个常量,即不能改变数组的首地址,而指针是一个变量,可以改变它的值;如:数组 a和指针p,p=a+1;是合法的,但a=a+1;是不合法的。
5、指针数组,指数组元素就是指针 数组指针,对于一维数组来说就是数组名 故对于一维数组来说,数组名是第一个元素的指针,而元素本身也是指针,故数组名是指向指针的指针。
6、二维数组的指针,其运算的基本单位是行宽,因此二维数组的指针又称为行指针,假设a的首地址为1000,p指向a,当p++时地址值是增加了一行的宽度,也即加一后p的值为1016而不是1001也不是1004。
Q3: 指针数组和数组指针的区别有哪些?
1、指针数组和数组指针的区别主要有以下几点:数组名不可以改变,而指向数组的指针是可以改变的。字符串指针指向的字符串中的字符是不能改变的,而字符数组中的字符是可以改变的。
2、数组指针和指针数组的区别有内存、初始化和操作。定义:内存指针数组中的每个指针元素都需要独立的内存空间,而数组指针本身只需要一个内存空间来存储所指向的数组的首地址。
3、意思不同,定义不同等。意思不同:指针数组是指一个数组里面装着指针,也即指针数组是一个数组。数组指针是指一个指向数组的指针,它其实还是一个指针,只不过是指向数组而已。
4、指针数组和数组指针的区别就是指针数组是一个数组,其中的每个元素都是指针类型。数组指针是一个指针,它指向一个数组的首地址。
5、【答案】:A、C 数组指针只是一个指针变量,它占有内存中一个指针的存储空间,而指针数组是多个指针变量,以数组形式存在内存当中,占有多个指针的存储空间。
Q4: 指针数组和数组指针的区别
1、意思不同,定义不同等。意思不同:指针数组是指一个数组里面装着指针,也即指针数组是一个数组。数组指针是指一个指向数组的指针,它其实还是一个指针,只不过是指向数组而已。
2、指针数组是数组,它的元素是指针;而数组指针是指针,可以用来指向数组。
3、性质不同 指针数组:首先它是一个数组,数组的元素都是指针,它是“储存指针的数组”的简称。数组指针:首先它是一个指针,它指向一个数组,它是“指向数组的指针”的简称。
4、数组指针只是一个指针变量,它占有内存中一个指针的存储空间,而指针数组是多个指针变量,以数组形式存在内存当中,占有多个指针的存储空间。
5、指针数组和数组指针的区别主要有以下几点:数组名不可以改变,而指向数组的指针是可以改变的。字符串指针指向的字符串中的字符是不能改变的,而字符数组中的字符是可以改变的。
6、数组指针和指针数组的区别有内存、初始化和操作。定义:内存指针数组中的每个指针元素都需要独立的内存空间,而数组指针本身只需要一个内存空间来存储所指向的数组的首地址。
Q5: 数组指针是指针数组吗?
1、指针数组是数组,它的元素是指针;而数组指针是指针,可以用来指向数组。
2、数组指针,指的是数组名的指针,即数组首元素地址的指针,即是指向数组的指针。指针数组可以作为函数的参量使用,使用方式与普通数组类似。指针数组常适用于指向若干字符串,这样使字符串处理更加灵活方便。
3、意思不同,定义不同等。意思不同:指针数组是指一个数组里面装着指针,也即指针数组是一个数组。数组指针是指一个指向数组的指针,它其实还是一个指针,只不过是指向数组而已。
4、指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针 数组指针:a pointer to an array,即指向数组的指针 还要注意的是他们用法的区别,下面举例说明。
关于c语言数组指针跟指针数组和c语言数组指针和指针数组的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。






