700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 结构体指针大小_C语言100题集合013-指向结构体变量的指针

结构体指针大小_C语言100题集合013-指向结构体变量的指针

时间:2021-04-05 08:27:40

相关推荐

结构体指针大小_C语言100题集合013-指向结构体变量的指针

系列文章《C语言经典100例》持续创作中,欢迎大家的关注和支持。

喜欢的同学记得点赞、转发、收藏哦~

后续C语言经典100例将会以pdf和代码的形式发放到公众号

欢迎关注:计算广告生态即时查收

1 题目

目标:熟悉指针和数组的底层逻辑

功能:使用指针输出数组元素

描述:通过指针将数组中你那个各个元素值进行打印输出

2 要点

a. 指向数组的指针实现输出数组元素,定义一个指向数组的指针用来灵活操作数组

int a[10];int *p;// 指针 p 指向数组的方法,下面两种都是可以的.// a 本身就是数组的其实地址,&a[0] 也是数组的起始地址p = a;p = &a[0];

b. 指针既是指向变量地址的又是决定指向变量地址的位数的。例如

int p = &a[0];

既是指向数组a的首地址 又是说明了每次指向都int类型的数据,即 4 个字节。

所以,在指定 p 的基类型后,通过指针指向数组,每次 p++ 都是会跳动4个字节,到达下一个位置a[1]。

即:*(p+1) 即取得 a[1] 的数据

3 代码

#include <stdio.h> #define N 10 /**目标:熟悉指针和数组的底层逻辑功能:使用指针输出数组元素描述:通过指针将数组中你那个各个元素值进行打印输出**/int main(int argc, char const *argv[]) {int a[N]; int *p;printf("请输入 10 个数字: n");for (int i = 0; i < N; ++i) {scanf("%d", &a[i]);}printf("n");for (p = a; p < a+10; ++p) {// 指针指向进行数组内容打印printf("数组中的内容:n%dn", *p);}return 0;}

示例结果:

$ gcc ex013.c -o demo$ ./demo请输入 10 个数字:12345678910数组中的内容:12345678910

--END--

喜欢本文的同学记得点赞、转发、收藏~

更多内容,欢迎大家关注我们的公众号:计算广告生态

后续C语言经典100例将会以pdf和代码的形式发放到公众号

同时也带来更多系列文章以及干货!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。