自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

转载 zz 阅读高质量代码是提高开发人员修为的一种捷径

<br />  编者按:原文作者Alan Skorkin是一名软件开发人员,他在博客中分享对软件开发<br />相关的心得,其中有很多优秀的文章,本文是其中的另一篇。Alan认为:阅读优秀代码<br />是提高开发人员修为的一种捷径。以下是全文。<br /><br />  我突然想起来,很多程序员都讨厌阅读代码。来吧,承认吧! 每个人都喜欢编写代<br />码,编代码是件趣事。 另一方面,阅读代码也不容易。 不仅不容易(编注:参见《微<br />软资深软件工程师:阅读代码不容易》),而且还非常枯燥,咱们要面

2011-01-26 18:40:00 750

转载 linux kernel中的变长参数宏

<br />  1 函数声明<br />   首先,要实现类似printf()的变参函数,函数的最后一个参数要用 ... 表示,如<br />   int log(char * arg1, ...)<br />  这样编译器才能知道这个函数是变参函数。这个参数与变参函数的内部实现完全没有关系,只是让编译器在编译调用此类函数的语句时不计较参数多少老老实实地把全部参数压栈而不报错,当然...之前至少要有一个普通的参数,这是由实现手段限制的。<br />  2 函数实现<br />   C语言通过几个宏实现变参的

2011-01-26 10:26:00 1606

原创 C中的宏展开

<br />在阅读一些大量使用宏的C项目源码的时候,相信你一定和我一样被宏嵌套折腾得晕头转向,不过没关系,我找到了一种简单的方法,可以将宏作为字符串打印出来,以方便分析:<br />#define macro_to_str1(x) #x#define macro_to_str(x) macro_to_str1(x)....const char* str=macro_to_str(AnyMacro);printf("%s",str);<br />AnyMacro是任何你想打印出来的待展开的宏。

2010-11-23 11:41:00 1082

原创 单向循环链表反转

<br />昨天面试被问到单向循环链表的反转问题,以前没有考虑过这个问题,答得不是很好,晚上回去仔细想了想,又在网上找了找,总结出以下几种方法:<br />1、利用两个额外变量的情况:<br />node* reverse(node *head) { if(head == NULL || head->next == NULL) { return head; } node *cur = head;

2010-11-09 14:54:00 1720 1

转载 UNIX系统开发-gcc参数详解

UNIX系统开发-gcc参数详解[版本] -0.13 [声明] 这篇文档是我的关于gcc参数的笔记,我很怀念dos年代我用小本子,纪录所有的dos 命令 的参数.哈哈,下面的东西可能也不是很全面,我参考了很多的书,和gcc的帮助.不全的原 因是,有可能我还没有看到这个参数,另一种原因是,我可能还不会用它 不过,我会慢慢的 补齐的.哈哈 如果你要转在本文章请保留我email(

2010-04-21 09:58:00 491

转载 linux下glut的安装

在linux下opengl编程,首先需要安装glut包。1 安装glut(1)下载地址: http://fidelio.cacs.louisiana.edu/resources/linux/glut.zip(2)将glut.zip解压:unzip glut.zip解压后,里面有一个rpm安装包,一个测试文件,一个glut.h,一个make

2010-04-20 14:00:00 4475

转载 Windows下删除Ubuntu修复mbr

关键字: 双系统下删除ubuntu 如果你是windows与Ubuntu双系统,现在想删除ubuntu或者想重装ubuntu的新版本,这时候如果你直接用PQ删除那个ubuntu的分区,将会使你无法进入windows,你必须先修复你windows的mbr。 简单有效的方法是: 1)到这个地方下载Windows下修复mbr的软件:MbrFix.exe http://www.linuxidc.com

2010-04-16 14:26:00 868 1

原创 eval命令用法

如果想写个Shell脚本能按反向打印出命令行中给的参数,可以这样写:#!/bin/bash ((count=$#)) while true do     echo -e “/$$count”     ((count=`expr $count-1`))     if [ $count -eq 0 ]     then break     fi done命名为print,并保存在目录/root/bas

2010-04-16 14:23:00 1237

原创 1002 487-3279

几度崩溃~~ 字符输入输出转换部分还是比较好弄的,关键排序比较麻烦。一开始用带后继的单向链表存放结点,电话号码存在结点的字符串里,因为是链表,就用上了直接插入排序,好容易调试完能出正确结果了,一提交,居然超时。。。看来测试数据那是相当bug。。 于是开始考虑效率问题,把转换好的电话号码作为数字存放在结点中,省去耗时的字符串比较,又弄了个指针数组存放结点地址,对指针数组进行快速排序。。。 程序改了又

2010-03-15 13:51:00 882

原创 umask使用小结

在Linux中,当一个新文件被创建时,系统默认的权限为rw-rw-rw-,对所有用户而言新文件没有执行权限,如果想要添加所有用户的执行权限可以使用"$chomd u+x,g+x,o+x filename"来实现,但如果用gcc命令将某源文件编译链接生成一个新的可执行文件,那它是有执行权限的。系统默认创建新目录也有可执行权限。使用umask命令可以将屏蔽掉用户创建文件时不希望有的权限,实现所谓的"m

2010-03-14 12:30:00 4408

C++ GUI Programming with Qt4

详细介绍了Qt4的C++ UI编程接口,是一部学习Qt不可多得的文档,英文版

2010-07-12

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除