1. 一直知道char *p = 'a';这样写是错误的,但是为什么是错的,没想过,今天看书解惑。

p指向一个字符,但是在c中,''引起来的一个字符代表一个整数,这样指针能不报错。o(^▽^)o

2.函数声明部分中(*(void (*)())0)(),看到这样的一个声明,我是觉得恶心,静下心来,慢慢分析呗。

( *( void (*pf)() )0 )(), 首先最外层(*(ppf)0)())——(这是什么鬼,强制转换,没看懂,搜了下,说是硬件地址跳到0处就是这么写的) ,ppf = ( void (*pf)() ) ,然后没什么好说的了,pf是一个函指,->一个返回void类型的函数。

c traps and pitfalls reading note(1)的更多相关文章

  1. c traps and pitfalls reading notes(2)

    1.运算符优先级,这个我是肯定记不住,每次遇到的时候都纠结下,然后去查下,或者直接括号,但是括号太多,你懂得,要用notepad才能理清各种层次.这里啦个下来,留着参考.

  2. [转载] C 陷阱与缺陷( C traps and Pitfalls )

    本文转自 https://www.xuebuyuan.com/1951579.html 自己找工作过程中复习过的书包括<C traps and Pitfalls>,<编程珠玑> ...

  3. 【Reading Note】算法读书杂记

    1 排序 排序基本信息 稳定性:排序前大的数在排序后,大的数依然保持不变就是稳定排序,反之不稳定 内外排序:根据待排序的记录是否放在内存里面区分的.诸如:插入排序(直接插入&希尔).交换排序( ...

  4. 【Reading Note】Python读书杂记

    赋值 >>> list=[] >>> app=[list,list,list] >>> app [[], [], []] >>> ...

  5. <C Traps and Pitfalls>笔记

    //------------------------------------------------------------------------------ 2.1 理解函数的声明: 编写一个独立 ...

  6. Python Geospatial Development reading note(1)

    chapter 1, Summary: In this chapter, we briefly introduced the Python programming language and the m ...

  7. 【Deep Learning】Hinton. Reducing the Dimensionality of Data with Neural Networks Reading Note

    2006年,机器学习泰斗.多伦多大学计算机系教授Geoffery Hinton在Science发表文章,提出基于深度信念网络(Deep Belief Networks, DBN)可使用非监督的逐层贪心 ...

  8. Python traps and pitfalls

    @1: >>> def func(a, L=[]): ... L.append(a) ... print(L) ... >>> func(10) [10] > ...

  9. codeforces 434A A. Ryouko's Memory Note(数学)

    题目链接: A. Ryouko's Memory Note time limit per test 1 second memory limit per test 256 megabytes input ...

随机推荐

  1. linux软链接与硬链接详解

    软连接 命令: ln -s 原文件 目标文件 特征: 1.相当于windows的快捷方式 2.只是一个符号连接,所以软连接文件大小都很小 3.当运行软连接的时候,会根据连接指向找到真正的文件,然后执行 ...

  2. 新手须知 QT类大全

    QT类大全,在行内容中罗列出来了,希望大家多看看,如果是API就更好了,但可惜不是.这些是一些大类,请多做参考. QApplication 应用程序类 QLabel 标签类 QPushButton 按 ...

  3. android camera2

    1.camera2api的部分描述: CameraCaptureSession api地址:https://developer.android.com/reference/android/hardwa ...

  4. 高级函数-sign

    ==========sign函数介绍(补充)===========   sign(n):判断n>0返回1;n=0返回0;n<0返回-1.   select sign(10),sign(0) ...

  5. 新建Eclipse工作空间,复制原有的配置(转)

    方法一: File->Switch workspace->Other...,按下图选择 只复制简单的配置,如cvs之类的信息是不会复制的. 方法二: 在方法一的基础上做如下操作 将新建的w ...

  6. Reentrant protected mode kernel using virtual 8086 mode interrupt service routines

    A method for allowing a protected mode kernel to service, in virtual 8086 mode, hardware interrupts ...

  7. linux 命令 xxd

    xxd,能够查看linux下文件的二进制表示.man一下xxd.能够得到下面信息 NAME        xxd - make a hexdump or do the reverse. SYNOPSI ...

  8. javascript 获取指定范围随机数

    <script type="text/javascript"> function GetRandomNum(Min,Max){ var Range = Max - Mi ...

  9. log4j.xml打印日志信息(2)

    log4j.xml文件 <? xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:con ...

  10. 闭包(closure)与协程共用时要注意的事情

    闭包是一种能够让你用非常舒服的方式来编程的小技巧,Go也支持闭包. 假设从来没有接触过闭包,想在一開始就弄懂什么是闭包(closure)是非常困难的,就像递归一样,直到你真正写过.用过它,你才干真正的 ...