c语言函数指针和数组 c语言数组指针和指针数组的区别
c语言中的数组和指针的区别
数组是用指针方式实现的,但数组值是一个常量,即不能改变数组的首地址,而指针是一个变量,可以改变它的值;如:数组 a和指针p,p=a+1;是合法的,但a=a+1;是不合法的。
站在用户的角度思考问题,与客户深入沟通,找到潜山网站设计与潜山网站推广的解决方案,凭借多年的经验,让设计与互联网技术结合,创造个性化、用户体验好的作品,建站类型包括:网站制作、网站设计、企业官网、英文网站、手机端网站、网站推广、申请域名、网站空间、企业邮箱。业务覆盖潜山地区。
数组和指针是不同的。定义一个数组就为数组划分了一段内存空间,而指针是不占用内存空间的,除非是用malloc等类似函数为其分配内存空间。
数组名本质上就是个指针,也就是地址,但是它是一个常指针,是个固定值,而指针是是指针变量的简称,是个变量,这个变量存放的是地址值,它的值是可以改变的。
(注意,不同目标平台指针长度可能不同,所以sizeof(void*)是最准确的回答)4,(可能是考试内容,对于正确性就呵呵)指针是间接访问,数组是直接访问。如果你对C语言有深入学习的想法,务必去了解一下C语言的ISO标准。
char a[]是字符数组,char *a[]是指向字符串的指针数组。所以给字符串赋值char a[]={I, ,a,m, ,h,a,p,p,y};是正确的,相当于初始化一个字符串。
0]的地址),数组名是一个指针常量,在运行过程中不能改变其值(如上:a的值是&a[0],若有a=&a[2]:则报错)。他们的区别:数组名是一个指针常量,而指针可分为:指针常量和指针变量。我想你应该明白了。
c语言什么时候使用数组,什么时候使用指针?
什么时候都可以用指针,因为用指针的效率比用变量高。当一个函数要返回1个以上的运算结果时,就必须用指针,因为一个函数只能返回一个值,更多的得用指针“带回”。
总结:不仅数组有指针,所有变量都有指针,指针说白了就是内存中的地址,就像一个房间必须有一个房间号。
指针就是一个装地址的变量,数组是内存中的一个区域,而数组名是这个区域的首地址。
C语言数组与指针
1、指针就是一个装地址的变量,数组是内存中的一个区域,而数组名是这个区域的首地址。
2、1,数组直接储存对象,指针则是指向一个对象。2,数组名不能被赋值,指针变量能。3,sizeof一个数组,得到数组的长度(字节单位),sizeof一个指针,相当于sizeof(void*)。
3、C语言中,数组的名称等价于数组的首地址,当然可以利用指针开辟动态空间,使用方式与数组在形式上相同的,但是他们有一个本质的区别,数组名相当于一个地址常数,而指针是一个以地址为内容的变量。
4、数组名本质上就是个指针,也就是地址,但是它是一个常指针,是个固定值,而指针是是指针变量的简称,是个变量,这个变量存放的是地址值,它的值是可以改变的。
当前题目:c语言函数指针和数组 c语言数组指针和指针数组的区别
文章位置:http://myzitong.com/article/deiehph.html