杂谈
文章平均质量分 58
「已注销」
这个作者很懒,什么都没留下…
展开
-
[杂谈] 计算机中的小端模式和大端模式
我们都知道,内存中存储的是各种变量,各种奇葩东西,不用的变量占用不用的字长,例如在intel X86环境下,一个int占用两个字 0123 4 5 6 7 8 9 0x30 0x31 0x32 0x33 0x34 0x35 0x360x37 0x38 0x39 节,即16位。然后在这16位上用0或1来表示这个int类型的变量到底是什么数值。那么这样就有两种写法了,在这16位上是从左往右写呢,还是原创 2014-04-14 14:40:15 · 1580 阅读 · 0 评论 -
2014年IT互联网行业薪酬待遇【转载】
一、民企1.百度 13k*14.6,special 14~17k*14.6 开发类 13K*14.6 (2014) 测试类、前端类 12K*14.6 (2014)2.腾讯 11.5k*16,special 12~14k*16 技术类研究生 11.5K*16 (2014) 终端开发本科生 10K*16原创 2014-08-19 04:15:57 · 1470 阅读 · 2 评论 -
Windows编程革命简史
源文:A Brief History of Windows Programming Revolutions (Ron Burk)首先,是 Windows API 和 DLL Hell。(译注:DLL Hell——DLL灾难,就是微软的DLL升级时因为不同版本可能造成应用程序无法运行的灾难,首当其冲的是COM编程,相信大家都知道某些木马或是病毒更改了一些系统的DLL可以导致整个Windows转载 2014-08-14 04:30:15 · 2334 阅读 · 0 评论 -
短码之美
看了《短码之美》一书,果真如封面所示——“编程达人的心得技法”。怎么说呢,算是学到了一些技巧吧,为了达到究极的短码效果,各种运算揉捏在一起,总有点邪门歪道,衣冠不整的感觉= =! 总的来说是这样的,首先尽量找出规律来,接着写代码,写完瘦身,好了以后再从规律中找更短的规律,就这么while下去,直到extremity才收手。就比如说POJ 1000:http://poj.org/prob原创 2014-04-14 14:39:41 · 2279 阅读 · 0 评论 -
《短码之美》——危险的Web服务器hack
在《短码之美》一书中,看到了如下一段话: 如果只是单纯地考虑显示出来的记录,没有比提交钻系统安全漏洞的源代码更有效的方法。在线评分系统在编译、执行源代码的过程中有一些安全漏洞,如果拥有必要相关知识的话,就可能提交危险的源代码。实际上,在本书写作过程中就发现了几个钻安全漏洞的方法,并且留下了25字节的记录。如果注意这方面的话,可以使用操作评分系统的源码,这样说不定可以留下0字节的记录。原创 2014-04-14 14:39:44 · 927 阅读 · 0 评论 -
[杂谈] 回顾switch
今天群里有人问了这么一个问题:#includeint main(){ int v1=0,v2=0; char ch; while((ch=getchar())!='#') { switch(ch) { case 'a': case 'h': default:v1++; case '0':v2++; } } printf("%d %d\n", v1, v2); return 0原创 2014-04-14 14:40:59 · 1015 阅读 · 0 评论 -
[杂谈] 部分常用的algorithm及numeric函数
binary_search 确定容器中是否存在某个元素binary_search(&num[0], &num[10], 5)count 返回匹配给定值的元素数目count(&num[0], &num[5], 3)count_if 返回符合条件的元素数目 (C++11)#include#includeusing namespace std;int cmp(int x){ return x >= 2原创 2014-04-14 14:40:54 · 702 阅读 · 0 评论 -
[杂谈] strtok - 分解输入的字符串
首次使用需要指定字符串接下来提取字符串时需要给予NULL参数。strtok的第二个参数表示用于分割的字符串非常实用!char str[100] = "1,2,3,4,5,6";char *p = strtok(str, ",");while(p != NULL){ printf("%s\n", p); p = strtok(NULL, ",");}输出:123456原创 2014-04-14 14:40:41 · 960 阅读 · 0 评论 -
[杂谈] 路遇一脑残题 - a++以及++a
下面哪个式子不正确?int a = 4;A、a += (a++);B、(++a) += (a++);C、a += (++a);D、(a++) += a;答案是D、(a++) += a;一个表达式,需要把结果赋值给等于号的左边,即“左值”。对象指的是某个具体的变量,左值就是对象的地址。a = a + 5这样的表达式,左值是a,a具有实实在在的内存地址以及数值。A + B = a + 5;左值为“A原创 2014-04-14 14:40:24 · 728 阅读 · 0 评论 -
[杂谈] 填空题 - 宏定义的使用
#define N 3#define Y(n) ((N+1)*n)printf("%d\n", 2*(N+Y(5+1)));的结果是多少?不是很简单么当然是2*(3+4*6) = 54么,恭喜你错了。请继续想清楚再往后看。首先N = 3;那么先把所有用到N的地方都换成3现在是#define Y(n) ((N+1)*n) -> Y(n) (4*n)然后关注表达式:2*(N+Y(5+1))2*(N原创 2014-04-14 14:40:22 · 920 阅读 · 1 评论 -
[杂谈] C#中的集合初始化器&&匿名类
集合初始化器 看代码便知:using System;using System.Collections.Generic; namespace ConsoleApplication1{ class Program { public class Testclass { public int id;原创 2014-04-14 14:40:18 · 817 阅读 · 0 评论