C Primer Plus 第十章学习总结……2015.4.30
来源:互联网 发布:如何禁止下载软件 编辑:程序博客网 时间:2024/05/22 05:33
C Primer Plus
第五版
第十章 数组和指针
数组:当数值数目少于数组元素数目时,多余的数组元素被初始化为0;
初始化数组时可以省略括号中数字 int ar[ ]={1,2,3}
C不支持把数组作为一个整体赋值,也不支持用花括号括起来的列表形式进行赋值(初始化时除外)
数组索引不能超过数组边界
变长数组:在一个函数中定义:int =4;int ar[ n ];合法
指针
指针:1、指针数值就是它所指向的对象的地址
2、指针前运用运算符*可以得到指针指向的对象的数值
3、对指针加1等价于对指针的值加上它指向的对象的字节大小,要是加一个整数就是指向的对象的字节乘这个整数后的和
4、可以用指针标识数组的每个元素并得到每个元素的数值
int sum(int ar[],int n)无论任何情况,int*ar 都表示ar是指向int的指针,形式int ar[]也可以表示,但只能是在是声明形式参量时可以使用
int sum(int *ar,int n) int sum(int * ,int ) int sum(int ar[],int n) int sum(int ar[],int ) 四种表示等价。
指针指向数值最后一个元素的下一个元素是合法的。
一元运算符*和++具有相同的优先级,但他们的结合顺序是从右到左
ar[i]==*(ar+i)等价
指针可以进行如下操作
1、赋值:可以把一个地址赋给指针通常为数组名或&
2、求值:运算符*可以取出指针指向的数值
3、取指针地址:指针变量同其他变量一样具有地址和数值
4、将一个整数加给指针,是指针的值加上指针指向的数据类型的字节数与整数相乘积的和
5、指针间可以求差值,一般是数值,表示两个元素间的距离
指针最基的功能在于同函数交换信息
int sum(const int ar[ ]);用const可以对数组进行保护
将常量或非常量数据的地址赋给指针是合法的
把 非const 指针赋给const 指针的变量是非法的
int (* pt)[4]一个指针指向4个int;
int sum(int ar[][],int n)非法声明
int sum(int ar[][4],int n) 合法声明
变长数组:在函数内部,或作为形式参量方可声明,不可进行初始化
int sum(int rows ,int cols,int ar[rows][cols])合法 int sum(int ,int ,int ar[*][*])合法
int sum(int ar[rows][cols],int rows ,int cols)非法
变长数组允许动态分配内存。
- C Primer Plus 第十章学习总结……2015.4.30
- c primer plus 第十章
- C primer plus 第十章
- C Primer Plus 第八章 学习总结……2015.4.24
- C Primer Plus 第九章 学习总结……2015.4.26
- C Primer Plus 第五章学习总结 2015.4.19
- C Primer Plus 第六章学习总结--2015.4.20
- c primer plus 第十章学习梳理小结
- 《C Primer Plus》第十章编程题
- c primer plus 第十章答案
- 读书笔记:C++primer plus第十章
- C++Primer Plus 第十章-this指针
- C primer plus 第十章 练习1:
- C primer plus 第十章 练习2:
- C primer plus 第十章 练习3:
- C primer plus 第十章 练习4:
- C primer plus 第十章 练习5:
- C primer plus 第十章 练习6:
- sqoop数据导出导入命令
- Ecmascript 标准中的Array.prototype中的函数定义
- HDU ACM 2111 Saving HDU->贪心
- oracle用户目录误删除的恢复
- Java基础:多线程
- C Primer Plus 第十章学习总结……2015.4.30
- hive over hbase方式将文本库数据导入hbase
- 初体验
- 存储器问题
- 使用FileFilter过滤文件清理Maven仓库
- Android 带边框的圆形头像
- hive over hbase方式将数据导出
- 最小生成树
- 新浪微博开发之二十七(全局变量)