文档章节

指向数组的指针

陈洪波
 陈洪波
发布于 2015/05/19 19:34
字数 423
阅读 6
收藏 0

指向数组的指针变量成为数组指针变量。一个数组是由连续的一块内存单元组成的。数组名就是这块连续内存单元的首地址。

该实例我们实现了使用数组的指针引用数组,利用数组名以及下标引用数组等。

其中,使用数组的指针和数组的下标来遍历数组的时候可能不太容易理解,但是我已经在注释中说明清楚了。

下面附上我的代码:

#include <stdio.h>

/** * 本实例实现通过指向数组的指针引用数组, * 利用数组名以及下标引用数组等 * @brief main * @return */
int a[]={1,2,3,4,5};
#define N sizeof(a)/sizeof(a[0])

int main(void)
{
    int j; //游标变量
    int *p; //指针变量

    //利用数组名和下标顺序访问数组元素
    for(j = 0;j < N;j++){
        printf("a[%d]\t= %d\t",j,a[j]);
    }
    printf("\n");

    //让指针顺序指向数组的各元素,遍历数组
    for(p = a;p < a+N;p++){
        printf("*p\t= %d\t",*p);
    }
    printf("\n");

    //指针和游标变量结合,改变游标变量遍历数组
    for(p = a,j = 0;p+j<a+N;j++){
        printf("*(p+%d)\t= %d\t",j,*(p+j));
    }
    printf("\n");

    //指针和游标变量结合,用指针和下标遍历数组
    for(p=a+N-1,j=N-1;j>=0;j--){
        /** * 这个地方刚开始一直没有看懂,后来明白了 * 当p=a+N-1时,就已经将该位置当作下标为0了 * 所以,其前一个元素就是a[-1]也就是4 */
        printf("p[-%d]\t= %d\t",j,p[-j]);
    }
    printf("\n");

    return 0;
}

下面是我的程序运行的结果截图:

这里写图片描述

本文转载自:http://blog.csdn.net/hongbochen1223/article/details/45607145

陈洪波
粉丝 2
博文 76
码字总数 1552
作品 0
济南
程序员
私信 提问
指针数组,数组指针、指针函数,函数指针

听到这几个名词不知道大家什么感受,反正我是一脸懵逼,不过我还是比较好学的,在老师的指导下,自己下去也钻研了一下,有一些自己的见解,我想在学习过程中也有童鞋遇到了相同的问题,希望我...

捕风的xiao_k
2017/03/26
0
0
C++笔记——指针数组/数组指针

1、定义 指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针。定义 int p[n]; 数组指针:a pointer to an array,即指向数组的指针。定义 int (p)[n]; 初学者总是分...

yushupan
2018/01/02
0
0
理解 指针数组 数组指针 函数指针 函数指针数组 指向函数指针数组的指针

一、指针数组与数组指针先看两行代码,猜猜哪个是数组,哪个是指针 int *p[5]; int (*p)[5]; 有没有很简单,但是有很多初学者很是分不清楚;第一个是指针数组,第二个是数组指针。且看小僧给...

qq_38646470
2017/11/21
0
0
C Primer Plus 第10章 数组和指针 10.7 指针和多维数组

指针和多维数组有什么关系?为什么我们需要知道它们之间的关系?函数是通过指针来处理多维数组的,因此在使用这样的函数之前,您需要更多的了解指针。假设有如下的声明: int zippo[4][2] ; ...

idreamo
2016/08/06
71
0
C Primer Plus 第10章 数组和指针 10.5 指针操作

C提供了6种基本的指针操作,下面的程序将具体演示这些操作。为了显示每一个操作的结果,程序将打印出指针的值(即指针指向的地址)、指针指向地址中存储的内容,以及指针本身的地址(如果您的...

idreamo
2016/07/30
87
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习笔记

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯。 是连接两个独立应用程序或独立系统的软件。 web请求通过中间件可以直接调用操作系统,也可以经过中间件把请求分发到多...

码农实战
42分钟前
4
0
Spring Security 实战干货:玩转自定义登录

1. 前言 前面的关于 Spring Security 相关的文章只是一个预热。为了接下来更好的实战,如果你错过了请从 Spring Security 实战系列 开始。安全访问的第一步就是认证(Authentication),认证...

码农小胖哥
今天
8
0
JAVA 实现雪花算法生成唯一订单号工具类

import lombok.SneakyThrows;import lombok.extern.slf4j.Slf4j;import java.util.Calendar;/** * Default distributed primary key generator. * * <p> * Use snowflake......

huangkejie
昨天
11
0
PhotoShop 色调:RGB/CMYK 颜色模式

一·、 RGB : 三原色:红绿蓝 1.通道:通道中的红绿蓝通道分别对应的是红绿蓝三种原色(RGB)的显示范围 1.差值模式能模拟三种原色叠加之后的效果 2.添加-颜色曲线:调整图像RGB颜色----R色增强...

东方墨天
昨天
10
1
将博客搬至CSDN

将博客搬至CSDN

算法与编程之美
昨天
12
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部