#include <stdio.h>
int main(){
//初始化一个整型数组,最后一个会以0补齐
int a[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
//循环打印初始化的数组
for (int i = 0; i < 10; i++)
printf("%d ", a[i]);
//数组其实就是指针,数组名就是指向该数组第一个(整型)元素的指针,例如 a是指向a[0](a[0]其实可以换成任意变量,例如 sum等等)
//打印*a(指针a的间接引用),就会打印出a[0]的值
printf("\n%d", *a);
//定义一个整型指针p
int *p;
//把数组名a,赋值给指针p,那么p也就指向了数组的第一个元素a[0],这时,p也等同于数组名
p = a;
//打印p[1],就和打印a[1]效果是一样的
printf("\n%d", p[1]);
//打印*p(指针p的间接引用),就等同于打印*a,也等同于打印a[0]
printf("\n%d",*p);
//定义一个整型变量
int *Ptr, b;
b = 3;
//把变量地址付给整型指针Ptr,这时,指针Ptr也相当于一个整型数组名,只不过这个数组只有一个元素,就是b,也就是Ptr[0],也就是3
Ptr = &b;
//*Ptr的值,就相当于Ptr[0]
printf("\n%d", *Ptr);
printf("\n%d", Ptr[0]);
return 0;
}
关于数组和指针的讨论(一)
最新推荐文章于 2025-05-18 21:22:17 发布