《C陷阱和缺陷》读书笔记(1)- 词法”陷阱“

为了敦促自己读书,特地开了一个读书笔记系列。

自上大学学习了谭浩强版本的《C程序设计》以来,以及经过这么多年遭受的C/C++面试和工作的毒打,就有一个感觉,C/C++语言的设计处处充满了陷阱。编译器设计之复杂,条目细则之多,感觉远远超出了其他语言。掌握了越多的这些”细则“或者”陷阱“,就离大师就更近了一步。而这些大师们,也津津乐道于讲述自己所掌握的这些”陷阱”以彰显自己大师之风范,以在面试中能够用这些“陷阱”困住面试者为骄傲!难怪人们常说,“细节决定成败”!而程序员最需要掌握的更加是一些编程语言、编译器的细节。

……

阅读全文

《C陷阱和缺陷》读书笔记(1)- 词法”陷阱“

为了敦促自己读书,特地开了一个读书笔记系列。

自上大学学习了谭浩强版本的《C程序设计》以来,以及经过这么多年遭受的C/C++面试和工作的毒打,就有一个感觉,C/C++语言的设计处处充满了陷阱。编译器设计之复杂,条目细则之多,感觉远远超出了其他语言。掌握了越多的这些”细则“或者”陷阱“,就离大师就更近了一步。而这些大师们,也津津乐道于讲述自己所掌握的这些”陷阱”以彰显自己大师之风范,以在面试中能够用这些“陷阱”困住面试者为骄傲!难怪人们常说,“细节决定成败”!而程序员最需要掌握的更加是一些编程语言、编译器的细节。

……

阅读全文

如何写一个漂亮的Markdown

一、概述

作为一个技术人员,善于利用工具提升生产效率是一个合格的技术人员的基本修养,也是提升效率的一个重要途径。作为一个程序员,有许许多多的工具来提升生产效率,使用规范化和大统一的规则规范是与优秀程序员世界接轨、交流和孜孜不倦的追求。

这里,想写很多工具和方法。但是,这里想先讲讲怎么将自己的内容完美呈现出来,让更多的人能够理解自己的思想。

……

阅读全文

优质软件推荐

经过多年实践,总结的优质软件列表。持续更新中…

一、Windows

1.1 Directory Opus(收费)

功能超强的资源管理器。比Windows自带的资源管理器好用太多,多Tab,正则表达式批量重命名,FTP连接器,多窗口操作,图片文本文件预览等。

……

阅读全文

GDB调试技巧

一、直接调试

1.1 启动与停止

  • run / r 启动程序
  • set args <arg1> <arg2> 设置程序运行参数
  • finish 结束当前函数的运行,函数剩余部分会执行完毕
  • return 立即结束当前函数执行并返回,可带参数返回

1.2 调试指令:

  • step / next 执行下一行(进入函数)/(不进入函数)
  • disassemble 查看汇编命令
  • stepi / nexti 执行下一条汇编指令 (进入函数)/(不进入函数)
  • jmp 跳转指令
  • info r 查看寄存器值。info 可以简写为 i
  • bt 查看调用路径

堆栈用途:

……

阅读全文

2019年度总结

2019年就这样匆匆而过,还来不及回味,就已经到达最后一天了。这一年发生了太多的事情,也有太多让我没有想到的事情。本来想回顾一下这10年,但是想想10年发生的许多事情已经记不清楚了,还是回顾一年的事情吧。

今年是平凡的一年。没有太多的不同,和往年差不多。感情没有变好,赚钱没有变多,身体却在变差,人过30,身体会告诉你,这个30意味着什么。

……

阅读全文

致震波的一封信

这封信是在你考上大学准备进入校园的时候写的,有点长,耐心读下去,写这封信也是自己这些年来的一些感悟和体会。

恭喜考入大学

首先,恭喜震波考入大学!从今以后,你就是一名光荣的大学生了,成为了一名独立、自主的个体,可以有自己的想法,自己的行为,并且自己为自己的所作所为负责,做一个挺胸抬头、不卑不亢、不骄不躁的自我。

……

阅读全文

Redis的使用方法

一、 工具查看

可以直接使用 redisClients 软件界面操作查看

二、 命令行

redis-cli -h 127.0.0.1 -p 6379

2.1 基础命令

  • keys * // 列举所有的key
  • expire <key> <seconds> // 设置某个key的过期时间(单位:秒)
  • ttl <key> // 显示key的过期时间(单位:秒)【返回-1表示永久 -2表示key不存在】
  • persist <key> // 将key的时间设置为永久
    • set getset 都会将key设置为永久
  • expireat <key> <1540000000> // 在某个时间点过期

pexpire pttl pexpireat 跟上面一样,只是单位是毫秒

……

阅读全文