您的位置:首页 > 其它

指针和数组

2015-12-20 18:34 204 查看
//
//  main.c
//  C语言学习

#include <stdio.h>

int main(int argc, const char * argv[]) {

//数组名就是数组的地址,数组的地址就是数组首元素的地址
int ages[3] = {1,3,5};
printf("ages = %p\n",ages); //ages = 0x7fff5fbff7ac
printf("&ages[0] = %p\n",&ages[0]); //&ages[0] = 0x7fff5fbff7ac

//指针是专门用于保存地址
/*
由于数组的首元素的地址就是数组的地址,所以定义一个指针指向数组其实就是定义一个指针指向数组的首元素。
所以,数组的首元素是什么类型,那么指向该数组的指针就应该是什么类型
*/
int *p = ages;
printf("p = %p\n",p); //p = 0x7fff5fbff7ac

//如何利用指针操作数组
ages[0] = 998;
printf("ages[0] = %i\n",ages[0]); //ages[0] = 998

int *p1 = ages; //定义一个指向ages数组的指针p1
p1[0] = 999;
printf("ages[0] = %i\n",ages[0]); //ages[0] = 999

return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: