Avatar_small

走进Lisp的世界——兼谈Emacs下Lisp的开发环境(上)

Table of Contents 1 磨刀不误砍柴工 2 Emacs 3 Slime 4 Common Lisp 1 磨刀不误砍柴工 ”工欲善其行,必先利其器“,工具的强是无敌的。 而判断一个工具是否值得...

Avatar_small

QT tablModel/View编程中,QTABLEVIEW的视图大小问题

MODEL继承自QAbstractTableModel, VIEW使用的QTABLEVIEW。 就列的显示大小和弹簧问题,做了很多尝试。 现在基本可以达到满意效果。 tableView = new QTableView; tableView->horizontalHeader()->setStretchLastSe...

Avatar_small

Ubuntu Linux 非root账户运行adb

在linux中,如果以非root账户运行adb命令通常回出现以下错误提示: error: insufficient permissions for device 解决办法:给非root账户添加udev的写权限。操作如下。 添加/修改/etc/udev/rules.d/51-android.rules文件,之后重启udev服务。 对某特定品牌添加权限 ...

Avatar_small

Qt4 与 ImageMagick中Magick++ 库 链接的.pro文件部份内容(Linux)

INCLUDEPATH += /usr/include/ImageMagick LDFLAGS += -Wl,-Bsymbolic-functions -Wl,-z,relro if (exists(/usr/lib64)) { LIBS += -L/usr/lib64 -lMagick++ -lMagickWand -lMagickCore -llcms -lti...

Avatar_small

编程获取本机IPv4及IPv6地址

首先,我要通过编程直接获取,而不是去读诸如ifconfig等命令的输出。 其实是只想获取IPv6地址的,不过我猜想它们差不多,也确实看到不少相关搜索结果,于是顺带着看了。 首先,使用gethostbyname查自己通常是不行的,因为可能得到127.0.0.1,而且我猜,这样不能处理拥有多个IPv4地址的情况。另外一种方式是连上某个主机,然后调用getsockname。这...

Avatar_small

无聊写的谷歌拼音颜文字扩展

谷歌输入法的颜文字扩展已经有好多了,反正也不差我再写一个吧 o(* ̄▽ ̄*)o ,表情比较多(300+) 源码和扩展文件都放在 Github 上了:https://github.com/tisyang/kaos 示例1: 示例2: 安装方法: 在谷歌输入法设置的 扩展 页面,选择 安装扩展包 ,选择下载的 kaos....

Avatar_small

数据结构-数

树的存储结构: 双亲表示法 孩子表示法 孩子兄弟表示法 双亲表示法: 双亲表示法中,在每个结点中,附设一个指示器指示其双亲结点到链表中的位置。 双亲表示法的结构定义: #define MAX_TREE_SIZE 100 typedef int TElemType; typedef struc...

Avatar_small

[USACO:58] clocks

原题 Consider nine clocks arranged in a 3x3 array thusly: |-------| |-------| |-------| | | | | | | | |---O | |---O | | O | | ...

Avatar_small

分享一些在软件开发中的实用小工具

sql格式化之sqlpp 在Java开发中经常会打印ibatis生成的sql语句进行程序分析,不过打印出来的并非格式化,通常被拉成一行,这个工具有助于格式化sql语句,便于阅读。 格式化之前 格式化之后 下载地址>> xml格式化工具之foxe xml格式化工具较多,foxe就是其中一个,不仅能格式化xml...

Avatar_small

Open Game Maker 2D 1.0.3 is released

Open Game Maker 2D 1.0.3 is released. It is another bug-fix version of 1.0.1. It mainly solved the compatibility problem of Ubuntu 12 (Thanks gra very much). Project: http://ogm2d.source...

Avatar_small

我的 digzhu.com 功能做的差不多了

当时买的 linode 是为了翻墙..呃,我好奢侈. 因为那段时间,封的特别厉害,google 都上不去,各种免费翻墙手段失效了,一个怒火中烧,买了 linode 的 vps. 翻墙很爽,但是vps也不能白白空着,于是实现了一下以前很早之前的一个想法:做一个推荐网站的网站. 诱因是因为发现很多不错的网站,用搜索引擎未必能搜出来,无论是 google 还是 baidu...

Avatar_small

打造高效的工作环境(番外篇1): windows/linux钗黛双收

前两篇文章基本上都在对Windows进行各种吐槽,最近Win8消费者预览版的出现更是让我对我的吐槽充满了信心——微软已经堕落到需要靠五颜六色的砖块来吸引眼球的地步了。我虽然没有亲身体验过Metro UI,但是我依然坚持,Metro UI是个无比糟糕的设计,一个彻头彻尾的倒退。颠覆传统、回归本原?是回归到Windows 3.x时代吗?一眼望去,Metro UI似乎...

Avatar_small

在Linux下面使用GCD

GCD(Grand Central Dispatch)是苹果在Mac OS X上面实现的一个C语言的多核编程方式。在iOS和Mac OS X多线程编程中苹果首推这个方式,主要原因是它由内核直接进行负载均衡,所以效率会比较高。再者它使用了被称为blocks的C语言扩展语法,这种语法实际上就是闭包。基于这种语法就可以写出类似javascript中的无阻塞异步方法,使代码非常易读。 ...

Avatar_small

setjmp/longjmp 使用注意

不应从调用 setjmp() 的过程中返回。 如果setjmp所在的函数已经调用返回了,那么longjmp 使用该处 setjmp 所填写的对应 jmp_buf 缓冲区将不再有效。这是因为longjmp 所要返回的"栈帧"(stack frame) 已经不再存在了,程序返回到一个不再存在的执行点,很可能覆盖或者弄坏程序栈。 上篇文章叙述过这个,也...

Avatar_small

setjmp 和 longjmp

本文主要讲解 C 库中的函数 setjmp 和 longjmp,也就是所谓的 非局部跳转。 本文主要翻译和出自Jim Plank的讲座CS360 Lecture notes -- Setjmp 翻译 by tisyang自我感觉不直观的翻译都在括号中附加了原文 Jim Plank Directory:/blugreen/homes/pla...