free website counter

Mushsen's Blog


青蛙跳台阶问题

  1. 一只青蛙一次可以跳上 1 级台阶,也可以跳上2 级。求该青蛙跳上一个n 级的台阶总共有多少种跳法。
  2. 一只青蛙一次可以跳上1级台阶,也可以跳上2 级……它也可以跳上n 级,此时该青蛙跳上一个n级的台阶总共有多少种跳法?
Read More

C字符串相关库函数的实现

   笔试面试中经常出现让实现基础的字符数组操作相关的函数,这些函数的实现,简单,却很多陷阱,考察思维的严谨以及基础知识的扎实。越来越感受到,很多编程的小细节,能够很好地反应一个程序员的水平以及修养。甚至是从代码风格,小到一个空格是否需要,括号的组织,好吧,我是强迫症。

Read More

iOS中本地持久化存储

  App中有一些数据需要在本地持久化存储,主要是涉及一些App个人私有的配置信息,比如当前版本号、需要离线浏览的文章、当前选择的是白天/夜间浏览模式、登陆数据等。而为了最大化页面加载,也有不少信息需要在本地就行存储。iOS中本地存储主要是三种方式,数据库(SQLite)、NSUserDefaults、plist文件。原来开发中,一直喜欢自己新建plist文件进行存储,使用key-value的格式,类似自己建xml格式的文档。如此好处仅仅是开发的时候可视化比较好,但是这样需要显示创建、读取文件,很麻烦。而NSUserDefaults才则不需要考虑这些东西,像读取字符串一样直接读取、存储,自动进行key-value存储,并将数据进行序列化,读取方便、占用空间小,相当于一个小型的key-value数据库。

Read More

iOS工程中添加pch文件

  最近在改版华商名人堂的iOS客户端,顺便把之前iOS开发中涉及到的一些东西整理一下。

  将整个共工程都广泛使用的头文件包含在该文件下,编译器会自动将头文件添加到所有源文件,使用相应类时不需要import;可以把UIKit/UIKit.h, Foundation/Foundation.h等框架头文件, 以及包含NSLog开关的头文件放在该文件中。

Read More

Mac/Linux下rm实现回收站功能

  Unix下的rm命令为彻底删除,特别加上-rf选项后,很容易由于手抖造成无法挽回的错误。上几天写代码时,写了一早上,临吃饭时,想把.pyc给删了,手抖把.py给删了。虽然可以通过lost+found想办法找回,但相当费劲。为防患于未然,还是想办法把rm命令alias成移到回收站的功能。在github上找到一个朋友写的脚本,不错。

Read More
Load More…
分享按钮