《C和指针》 读书笔记 -- 第13章 高级指针话题
1.函数指针
int (*f)();
int *(*f[])();
用途:
【1】回调函数
e.g.
/*在一个单链表中查找指定值*/
Node *search_list(Node *node,void const *value,int (*compare)(void const *,void const *) )
{
while(node != NULL)
{
if(compare(&node->value,value)==0)
break;
node=node->link;
}
return node;
}
int compare_ints(void const *a,void const *b)
{
if(*(int *)a == *(int *)b)
return 0;
else
return 1;
}
desired_node=search_list(root,&desired_value,compare_ints);
【2】转移表
double add(double,double);
double sub(double,double);
double mul(double,double);
double div(double,double);
double (*oper_func[])(double,double)={add,sub,mul,div};
result=oper_func[oper](op1,op2);
2.命令行参数
int main(int argc,char **argv)
3.字符串常量
当一个字符常量出现在表达式中时,它的值是一个指针常量。编译器把这些指定字符的一份拷贝存储在内存的某个位置,并存储一个指向第一个字符的指针。
"xyz"+1;
"xyz"[2];
remainder=value%16;
if(remainder<10)
putchar(remainder+'0');
else
putchar(remainder-10+'A');
《C和指针》 读书笔记 -- 第13章 高级指针话题的更多相关文章
- C++ primer plus读书笔记——第13章 类继承
第13章 类继承 1. 如果购买厂商的C库,除非厂商提供库函数的源代码,否则您将无法根据自己的需求,对函数进行扩展或修改.但如果是类库,只要其提供了类方法的头文件和编译后的代码,仍可以使用库中的类派生 ...
- APUE读书笔记-第13章-守护进程
第13章 守护进程 13.1 引言 *守护进程也称精灵进程(daemon)是生存期较长的一种进程.它们常常在系统自举时启动,仅在系统关闭时才终止.因为它们没有控制终端,所以说它们是在后台运行的.UNI ...
- 《Javascript高级程序设计》读书笔记(1-3章)
第一章 JavaScript简介 1.1 JavaScript简史 略 1.2 JavaScript实现 虽然 JavaScript 和 ECMAScript 通常都被人们用来表达相同的含义,但 Ja ...
- Javascript设计模式与开发实践读书笔记(1-3章)
第一章 面向对象的Javascript 1.1 多态在面向对象设计中的应用 多态最根本好处在于,你不必询问对象“你是什么类型”而后根据得到的答案调用对象的某个行为--你只管调用行为就好,剩下的一切 ...
- JavaScript高级程序设计第三版-读书笔记(1-3章)
这是我第一次用markdown,也是我第一次在网上记录我自己的学习过程. 第一章 JavaScript主要由以下三个不同的部分构成 ECMAScript 提供核心语言功能 DOM 提供访问 ...
- 《Unix环境高级编程》读书笔记 第13章-守护进程
1. 引言 守护进程是生存期长的一种进程.它们常常在系统引导装入时启动,仅在系统关闭时才终止.它们没有控制终端,在后台运行. 本章说明守护进程结构.如何编写守护进程程序.守护进程如何报告出错情况. 2 ...
- js高程读书笔记(1-3章)
一.js简介 js是一种专为与网页交互而设计的脚本语言,由以下三个不同的部分组成: 1.ECMAScript,由ECMA-262(它规定了语言的这些组成部分:语法,类型,语句,关键字,保留字,操作符, ...
- 《Android内核剖析》读书笔记 第13章 View工作原理【View树遍历】
View状态分类 在View视图中定义了多种和界面效果相关的状态,比如拥有焦点Focused.按下Pressed等,不同的状态一般会显示不同的界面效果,而且视图状态会随着用户的操作而改变,一般通过xm ...
- 《Android内核剖析》读书笔记 第13章 View工作原理【View重绘过程】
计算视图大小的过程(Measure) 视图大小,准确的来说应该是指视图的布局大小:我们在layout.xml中为每个UI控件设置的layout_width/layout_height两个属性被用来设置 ...
随机推荐
- Java SE ---关系运算符
java里的关系运算符有这么几种:大于(>).小于(<).等于(==).不等于(!=).大于等于(>=).小于等于(<=), 关系运算的结果是个boolean值,关系式成立为t ...
- Android(java)学习笔记83:finally关键字的作用
package cn.itcast_07; import java.text.ParseException; import java.text.SimpleDateFormat; import jav ...
- CentOS(十)--与Linux文件和目录管理相关的一些重要命令②
在结束了第二期的广交会实习之后,又迎来了几天休闲的日子,继续学习Linux.在上一篇随笔 Linux学习之CentOS(十七)--与Linux文件和目录管理相关的一些重要命令① 中,详细记录了与Lin ...
- linux-redhat5找回root密码
我在虚拟机里装了个redhat(RedhatEnterpriseLinuxASv5.4-x64),也不经常用,偶尔进去用用吧,又把密码忘记了,哎...脑子不好使啊 不知道像ubuntu是不是一样的,还 ...
- 原生js 实现的瀑布流
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- Linux 命令 - scp: 远程文件拷贝
scp 与普通的文件复制命令 cp 类似,而它们之间最大的差别在于 scp 命令的源或目标文件是远程文件. 命令格式 scp [options] [[user@]host1:]file1 ... [[ ...
- .net求两个数的最大公约数和最小公倍数
最大公约数:指两个或多个整数共有约束中最大的一个. 最小公倍数:如果有一个自然数a能被自然数b整除,则称a为b的倍数,b为a的约数,对于两个整数来说,指该两数共有倍数中最小的一个. /// <s ...
- 每天一道LeetCode--237.Delete Node in a Linked List
Write a function to delete a node (except the tail) in a singly linked list, given only access to th ...
- sqlserver关于事务
事务的四个特性: 原子性,一致性,持久性,隔离性 原子性: 原子性:表示事务执行是作为原子,不可分割,整个语句要么执行,要么不执行sqlserver中每一个单独的语句可以看做是包含在事务中每一句本身具 ...
- Web 服务器上的请求筛选被配置为拒绝该请求,因为查询字符串过长
get请求方式中,传递的参数的值不能太多.是有长度限制的. http://test.jz.gaitu.cn:80/appMana/TemplateImgOutput.aspx?TemplateID=1 ...