传统方式与指针方式输出1-10

#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
     //定义数组ar
    int ar[10]={1,2,3,4,5,6,7,8,9,10};
    //定义循环变量i
    int i;
    //传统方法 
    printf("---------传统方法------------\n");
    //用for循环来逐个打印数组ar
    for(i=0;i<10;i++){
        printf("%d\n",ar[i]);
    } 
    //指针方法
    //定义整型指针变量
    int *pt;
    //给pt指针赋初始值ar[0],ar后面没有指定的话就默认赋数组ar的第一个值,也就是1
    pt = ar;
    printf("---------指针方法------------\n");
    //用for循环来逐个打印数组ar
    for(i=0;i<10;i++){
        //此时的pt指针储存的是数组ar里的第一个数据的地址,+i是让pt指针逐个跳到下一个数组ar的数据地址,从而调去ar的数据
        pt = ar+i;
        printf("%d\n",*pt);
    }
     
    return 0;
}

 

 

    

Ps:*pt指的是指针变量,也是存放变量数据,pt指的是指针,用来存放变量地址的。这个案例打印出来的结果是10,p用来存放变量i的地址,与此同时,*p等价于i了,所以打印出来的值是10 

PS: 使用指针是必须初始化,也就是赋值。

 

posted on 2017-05-03 17:01  梁锦杰  阅读(256)  评论(0编辑  收藏  举报

导航

欢迎进入我的博客!