编译器为数组的所有元素分配连续的内存位置。
基地址是数组中第一个元素的位置。
例如,int a [5] = {10, 20,30,40,50};
这五个元素的存储如下所示 −
立即学习“C语言免费学习笔记(深入)”;
如果将&p’声明为整数指针,则可以通过以下赋值指向数组&a’ −
p=a or p=&a[0];
通过使用p++从一个元素移动到另一个元素来访问每个&a的值。当指针递增时,它的值会增加指向的数据类型的大小。这个长度被称为“比例因子”。
指针p和变量a之间的关系如下所示−
P = &a[0] = 1000 P+1 = &a[1] = 1004 P+2 = &a[2] = 1008 P+3 = &a[3] = 1012 P+4 = &a[4] = 1016
元素的地址是使用其索引和数据类型的比例因子计算的。
a[3]的地址=基地址+(3*a的比例因子int)
=1000+(3*4)
=1000+12
=1012
*(p+3) gives the value of a[3] a[i] = *(p+i)
#include<stdio.h> main (){ int a[5]; int *p,i; clrscr (); printf (”Enter 5 lements”); for (i=0; i<5; i++) scanf (“%d”, &a[i]); p = &a[0]; printf (“Elements of the array are”); for (i=0; i<5; i++) printf(“%d”, *(p+i)); getch(); }
Enter 5 elements : 10 20 30 40 50 Elements of the array are : 10 20 30 40 50
以上就是解释C语言中指针和数组的概念的详细内容,更多请关注php中文网其它相关文章!
C语言怎么学习?C语言怎么入门?C语言在哪学?C语言怎么学才快?不用担心,这里为大家提供了C语言速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号