加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

#C语言#指针与数组

(2017-09-18 16:23:53)
分类: 计算机相关
指针是一种保存变量地址的变量。
1.指针与地址:p=&c;将把C的地址赋值给变量p,我们称p为指向c的指针。地址运算符&只能应用于内存中的对象,变量和数组元素。 *一元运算符是间接寻址或者间接引用运算符,当它*作用于指针时,将访问指针所指向的对象。
2.指针与函数参数:c语言中,是以传值的方式将参数值传递给被调用函数。
3.指针与数组:指针编写程序比数组快,但是指针理解起来稍微困难。int a[10], int *pa;pa=&a[0];就是将指针pa指向数组a的第0个元素,pa的值为a[0]的地址。pa =a;那么a[i]就可以写成*(a+i); 但是 a=pa,就是非法的。
4.地址算术运算:将指针,数组,和地址的算术运算集成在一起,是C语言一大优点。0不是有效的数据地址,地址算术运算主要是地址位的加减移动地址。
5字符指针与函数:字符数组以‘\0’结尾,函数中访问字符串也是通过字符指针访问对应字符串的,
6.指针数组以及指向指针的指针:指针数组用来存放指针的数组,指向指针的指针就是把第一个指针的地址存放到第二个指针中,第二个指针就是指向指针的指针。int i = 5;int *ip1 = &i;int **ipp = &ip1;
7.多维数组:数组元素按行存储,最右边的下标变化最快。
8.指针数组初始化:char *a[]={"1","2","43"};
9.指针与多维数组:指针可以不指定每个元素长度,而二维数组是定长的元素长度。
10.命令行参数:main(argc,argv),第一个argc勇于参数计数,表示运行程序时,命令行中参数个数。argv参数向量,是一个指向字符串数组的指针,每个字符串对应一个参数。主要模拟实现对应参数查找问题。
11.指向函数的指针:这种类型的指针可以用来赋值,存放在数组中,传递给函数以及作为函数的返回值等。
12.复杂声明:对于指针* 与()操作符之间的使用需要明确定义。下图就明确定义了声明的规则。#C语言#指针与数组



0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有