什么是二进制安全?

C字符串中的字符必须符合某种编码(比如ASCII),并且除了字符串的末尾之外,字符串里面不能包含“0”(空字符),否则字符串中的“0”将被误认为是字符串结束符,这些限制使得C字符串只能保存文本数据,而不能保存像图片、音频、视频、压缩文件这样的二进制数据。而PHP的字符串则不同,其支持二进制数据的存储,PHP在处理带二进制字符的字符串时,程序不会对其中的数据做任何限制、过滤或者假设,数据在写入时是什么样的,它被读取时就是什么样,这种能力称为字符串的二进制安全。

PHP字符串与C字符串

- 阅读剩余部分 -

Google资深工程师深度讲解Go语言-第12章:迷宫的广度优先搜索

6 * 5 的迷宫

1表示路不通

求从起点 (0,0) 到终点 (5,4) 的最短步骤

go_search01.png

每个节点有三个状态:


1. 未发现
2. 已发现未探索
3. 已发现已探索

探索可能出现的情况 :


1. 不通
2. 已探索
3. 正常进入

结束条件:

1. 到达终点
2. 前路皆不通

- 阅读剩余部分 -

在 Mac 上, 通过 root 权限去执行命令时, 仍然提示 "Operation not permitted" ,或者去编辑文件时仍然提示 "E45: 'readonly' option is set (add ! to override)" , 这是新版本的 Mac OSX 系统增加了 SIP(System Integrity Protection) 特性导致的。SIP 特性顾名思义就是对操作系统完整性的保护。

- 阅读剩余部分 -