码迷,mamicode.com
首页 > 编程语言 > 详细

指针与数组

时间:2018-12-06 01:28:43      阅读:208      评论:0      收藏:0      [点我收藏+]

标签:表达   turn   不能   运算   组元   include   作用   变量   函数名   

首先指针就是地址,数组本身就是地址,所以输入时可以不需要取地址符‘&‘,但如果引用数组的元素,就必须得加&符。

通过指针引用数组:

用一个指针变量指向一个数组元素

#include<stdio.h>
int main()
{
    int a[5]={2,5,8,3,5};
    int *p;
    p=&a[0];
    printf("%d",*p);
    return 0;
}

运行结果:2

当printf("%d",*p);改为printf("%d",p);时,每次的运行结果为不同的7位数字,表达的是地址。

p=&a[0];等价于p=a;(a为函数名),因为p=a;的作用是把a数组的首元素的地址赋给指针变量p。

同时,int *p;p=&a[0];等价于int *p=a;

 

数组是不能进行自加自减运算,需要借助指针变量。

若指针变量p指向a的元素a[0]:

1、p++:使得p指向下一个元素a[1],则*p为元素a[1]的值。

2、*p++:等价于*(p++),先得到p所指向的值*p,在进行p++运算。

3、*(++p):先使p自加1,再取*p的值。

4、(*p)++:表示p所指向的元素值自加1。

 

打印下列图形:

A

BC

DEF

GHIJ

 

#include<stdio.h>;

int main()
{
     int i,j,k=0,p=0;
     for(i=0;i<4;i++)
     {
          k++;
          for(j=0;j<k;j++)
          {
              p++;
              printf("%c",64+p);
           }
           printf("\n");
     }
}

 

指针与数组

标签:表达   turn   不能   运算   组元   include   作用   变量   函数名   

原文地址:https://www.cnblogs.com/hongjiamin/p/10074353.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!