代码改变世界

利用宏来求结构体成员偏移值

2013-10-01 04:51 by youxin, 5726 阅读, 0 推荐, 收藏,
摘要:我们在书写C程序的时候,有时候需要根据结构体成员变量的地址,得到结构体的地址,特别是我们想用C来实现C++的继承特性的时候。我们对问题的分析如下:输入:一个结构体定义type,这个结构体中某个成员变量的名字member以及它的地址ptr输出:包含此成员变量的结构体的地址为了便于分析,我们给出一个实例来说明struct father_t {int a;char *b;double c;}f;char *ptr = &(f.b);//而不是 ptr = f.b; 这里ptr是b的地址,而不是它指向的地址。根据C语言对struct类型的存储特性,我们可以画这么一个图示:通过分析图示,我们可以 阅读全文

水塘抽样问题

2013-10-01 04:18 by youxin, 6047 阅读, 0 推荐, 收藏,
摘要:google曾经有一道面试题,十分有趣:I have a linked list of numbers of length N. N is very large and I don’t know in advance the exact value of N.How can I most effic... 阅读全文

Javascript 装载和执行

2013-10-01 03:50 by youxin, 154 阅读, 0 推荐, 收藏,
摘要:http://coolshell.cn/articles/9749.htmlhttp://www.cnblogs.com/cheche/archive/2011/03/06/1971955.html 阅读全文

git ssh认证

2013-10-01 03:31 by youxin, 4282 阅读, 1 推荐, 收藏,
摘要:一般新手用git时,使用HTTPS都需要输入用户名和密码,这是一个很低效的开发过程。(虽然有时可以让开发人员减少push的次数)。github提供了几种连接方式,其中以https:开头的代表https连接,以git开头代表ssh连接。所以用ssh连接时要确保 你客户端的版本库url设置的ssh的ur 阅读全文

git 配置文件

2013-10-01 01:04 by youxin, 3282 阅读, 0 推荐, 收藏,
摘要:一.Git已经在你的系统中了,你会做一些事情来客户化你的Git环境。你只需要做这些设置一次;即使你升级了,他们也会绑定到你的环境中。你也可以在任何时刻通过运行命令来重新更改这些设置。 Git有一个工具被称为git config,它允许你获得和设置配置变量;这些变量可以控制Git的外观和操作的各个方面。这些变量可以被存储在三个不同的位置: 1./etc/gitconfig文件:包含了适用于系统所有用户和所有库的值。如果你传递参数选项’--system’给git config,它将明确的读和写这个文件。 2.~/.gitconfig文件 :具体到你的用户。你可以通过传递--global选项... 阅读全文

奇偶排序

2013-09-30 21:30 by youxin, 815 阅读, 0 推荐, 收藏,
摘要:这个算法一般见得比较少,其核心思想非常简单,在数组中重复两趟扫描。第一趟扫描选择所有的数据项对,a[j]和a[j+1],j是奇数(j=1, 3, 5……)。如果它们的关键字的值次序颠倒,就交换它们。第二趟扫描对所有的偶数数据项进行同样的操作(j=2, 4,6……)。重复进行这样两趟的排序直到数组全部有序。和冒泡排序法一样,奇偶排序的时间复杂度为O(N^2)。以一个实例来说明下:待排数组[6 2 4 1 5 9]第一次比较奇数列,奇数列与它的邻居偶数列比较,如6和2比,4和1比,5和9比[6 24 15 9]交换后变成[2 61 45 9]第二次比较偶数列,即6和1比,5和5比[26 14 59 阅读全文

IE兼容性bug汇总

2013-09-29 19:27 by youxin, 354 阅读, 0 推荐, 收藏,
摘要:1、IE6的双边距BUG.发生条件:如果有元素是浮动元素,则该元素与它的父元素(一般是一个容器)直接相接触(中间不能隔着其他元素)的左或右的边距就会产生双倍边距,也意味着相邻的兄弟元素不可能会产生双倍边距,只有元素与其父元素之间才有可能产生双倍边距,产生双倍边距的那边是与其父元素相接触的那边解决方法:给产生双倍边距的元素添加上display:inline。(上面的发生条件有点问题,一般是: 一个div盒子如果设置了margin,并且该div设置了float浮动,那么在IE6下便会产生双边距问题:如果设置 float:left 那么左边距会是原来margin的两倍;如果是float:right, 阅读全文

转:CSS布局奇淫技巧之-宽度自适应

2013-09-29 19:15 by youxin, 376 阅读, 0 推荐, 收藏,
摘要:css这个东西,说难不难,说容易也不容易。我觉得最重要的还是经验的积累,正所谓的不积硅步,无以至千里。这一系列文章讲述几种css特殊布局的实现,也当作为自己做个备忘吧。首先讲的是三列布局,左右两列宽度固定,中间一列宽度自适应这个很好实现,左右两列分别左浮动和右浮动并给一个固定宽度,中间不浮动,也不设定宽度。(这个是有问题的,后面说明)这样基本就可以了。但为了兼容IE还必须做些工作。看下代码结构:效果为:中间列要不要设置margin-left和margin-right ?注意,中间那列需要把左右两个外边距分别设为左右两列的宽度,否则会有些问题。如下:在谷歌、火狐等标准浏览器下是这样的(包括IE8 阅读全文

转:web前端面试题合集 (Javascript相关)(js异步加载详解)

2013-09-29 18:27 by youxin, 819 阅读, 1 推荐, 收藏,
摘要:1. HTTP协议的状态消息都有哪些?1**:请求收到,继续处理2**:操作成功收到,分析、接受3**:完成此请求必须进一步处理4**:请求包含一个错误语法或不能完成5**:服务器执行一个完全有效请求失败2. AJAX跨域的解决办法?1、document.domain+iframe的设置 对于主域相同而子域不同的例子,可以通过设置document.domain的办法来解决。 具体的做法是可以在http://www.a.com/a.html和http://script.a.com/b.html两个文件中分别加上 document.domain = a.com;然后通过a.html文件中创建一个. 阅读全文

css Block formatting context BFC

2013-09-29 05:51 by youxin, 748 阅读, 0 推荐, 收藏,
摘要:w3c关于BFC解释:http://www.w3.org/TR/CSS21/visuren.html#block-formattingMdn描述:Ablock formatting contextis a part of a visual CSS rendering of a Web page. It is the region in which the layout of block boxes occurs and in which floats interact with each other.A block formatting context is created by one of 阅读全文
上一页 1 ··· 125 126 127 128 129 130 131 132 133 ··· 269 下一页