骚扰
博客受垃圾留言骚扰
这几天发现自己的博客被垃圾留言盯上了!没多少分钟就有一留言,留言内容大致是:
Nice! Keep up the good work!
I love it!
Nice post! Many thanks for your work.
Very useful and interesting site, thanks!
Very good article.
大致出自blogs.eurosport.fr网站,现在有升级,http://s3.invisionfree.com/等等 也有了!
暂时还不知道究竟是怎样回事,只有将以上的留言变为关键词过滤掉!
留言的网址最后是指向一个卖药的网站的,donews的其它用户也受到了类似的骚扰!
经常受骚扰的确是烦人的事,现在真的是垃圾满天飞!
一生负气成今日,四海无人对夕阳
忆故居 —陈寅恪
渺渺钟声出远方,依依林影万鸦藏。
一生负气成今日,四海无人对夕阳。
破碎山河迎胜利,残馀岁月送凄凉。
松门松菊何年梦,且认他乡作故乡。
这是陈寅恪先生在1945作的一首诗,很多人都很喜欢他那句“一生负气成今日,四海无人对夕阳”。我也很喜欢!
C陷阱与缺陷(2)
第二章:语法陷阱
2.1理解函数声明
int f,g; 声明f,g的类型为整型.
int ((f)); 当对((f))求值时,((f))的类型为整型,由此可推知f也是整型。
int *pf; 这个声明中,*pf是一个整型数,所以pf是一个指向整型数的指针。
int *g(),(*h)();
对于*g(),因为()的优先级高于*,*g()就是*(g());令pf=g(),则*g()就是*pf,整个表达式变成 int *pf; 因此可知pf 是一个指向整型数的指针。由此可知对g()的求值结果是一个指向整型数的指针,也就是说g()的返回值是指向整型数的指针。最后得出,g是一个函数,该函数的返回值类型为指向整型数的指针。
对于(*h)(),令pf=(*h),则 pf() , 很明显看出,pf是一个返回值为int的函数。即*h是一个返回值为int的函数,因此h就是这个函数的指针,即h为返回值为int的函数的指针。
int (*h)(); 表示h是一个指向返回值为整型的函数的指针,因此:
(int (*)()) 表示一个“指向返回值为整型的函数的指针”的类型转换符。
假定fp是一个函数,调用fp所指向的函数为: (*fp)();ANSI标准允许程序员将上式简写成fp()。但要记住这只是一种简写形式。
*fp()实际上与*(fp())的含义完全一致,ANSI C把它作为 *((*fp)())的简写形式。
(void (*)()) 0; 将常数0转型为“指向void的函数的指针”类型。
对于 fp(),可变成:(*(void(*)()) 0)();
//有点玄而上学了!
2.2运算符的优先级问题
这个问题在第一章的时候提了一下!现在举个自己的例子!
r=hi>>4+low ;
我曾经天真地认为hi会先右移四位然后才和low相加。但错误狠狠地教训了我!这个表达式的顺序是hi右移了4+low个位。”+“的运算符的优先级大于“>>”的优先级!
具体的就不说了!记住下面两点:
1.任何一个逻辑运算符的优先级低于任何一个关系运行符。
2.移位运算符的优先级比算术运行符要低,但是比关系运算符要高。
另加自己的一条:如果不确定运算符的优先级,那就给你想先执行的语句加上括号!方便阅读并且保险!
2.3注意作为语句结束标志的分号
(1) if(x[i]>big);
(2) big=x[i];
注意,第二句和第一句的if没有关系!因为第一句的if之后有了一个分号,表示if语句判断之后执行了一个空语句。然后到了第二句!
再来看看少了分号的情况!
if(n>3)
return
logrec.date = x[0] ;
logrec.time = x[1];
程序原意是n大于3时就返回!但在return后面少了一个分号,程序就变成了n大于3时返回logrec.date的值了!
struct logrec{
int date;
int time;
int code;
}
main()
{
}
在这里,结构体后面少了个分号,程序变成了main函数的返回值是上面据说的结构体!这些都是不得不注意的问题!
2.4 switch语句
switch后面的case会顺序执行,因为C语言把case标号当成真正意义上的标号,程序的控制流程会径直通过case标号,而不受到任何影响!因此需要在每个case后面加上break来退出执行流!
2.5 函数调用
C语言要求在函数调用的时候即使函数不带参数,也应该包括参数列表,因此,如果f是一个函数:
f(); 是一个函数调用语句,而
f; 是一个什么也不做的语句,这个语句计算函数f的地址,却没有调用这个函数!
2.6 “悬挂”else引发的问题
没啥好说的,注意if和else的对应问题就可以了!写代码的时候注意好缩进能比较好地防止这个问题!或者是即使没有else语句对应的if语句也写上去,只为了对应,写上去的else执行空语句就可以了!
玩转开源文化节
今天和老犁还有他同学一起去了中大,参加了那个开源文化节。
人倒是挺多的,机器也多!见到了中大的网友阿俊。还见着了老犁的两位老师,他们很好人啊,也很好聊。一开始就送了我们一人一张餐巻。这样解决了吃饭问题,后来还帮我们一人搞了一件文化衫!真是好人啊!还说给老犁一个服务器,去镜像Linux。我学校有这样的老师就好了!哎,老犁,你可要好好珍惜啊,说那个服务器哩!呵呵!
文化节里有两个比赛,一个是桌面擂台。一个是设计的。设计的那个比赛有五千元的奖金啊,可惜是一早报好名的,老师带着队去参加的!题目也有些难度的!我想我也未必能全完成!那个桌面赛就随便一点了,我们中途报了名。其实就是比谁系统装得快!系统由你选。晕!我选了个红旗,谁知中标装得更快!老犁得了第三名,有个512U盘,我是第七名,呵呵!其实挺喜欢七这个数字的!没名次还有礼品拿嘛,是个耳机。回来一听,其实效果差得很!算了!也有点玩嘛!
回来的时候下了大雨,还遇着一个华工的MM问路,(老犁博客有说这件事)竟然说是想去春之花(偶大学里的一个零食店)!
faint!
其实偶倒是很在意一开始在公交站上的一个MM,偶第二次看见她!她好像也认得偶~~
今天还是很高兴的,很久没这么开心了!
自己常用的Linux程序
列出自己常用的Linux程序,排名不分先后:
1.浏览器:firefox, mozilla
2.rss阅读: liferea
3.电子书阅读:gpdf, acrode reader,chmsee,man
4.音乐播放:xmms,rhythmbox,mpg321,ogg123
5.视频播放: Mplayer,Xine,realplayer,totem,oxine,gxine
5.编辑器: vim,leafpad,gedit
6.软件包管理: Apt,dpkg,synaptic(新立得软件包管理器)
7.博客工具:Blogtk
8.聊天工具:cyclone(QQ client by gtkmm),eva(QQ client for kde),gaim(用于MSN,Jabber)
9,邮件工具: mutt + fetchmail + procmail + esmtp
10.游戏: xmame(街机模拟器),连连看,supertux
11.窗口管理器:Fvwm
12.图像处理:imagemagic,gimp,gqview,qiv
13.网络下载:gftp,lftp,proz,d4x,wget,azureus(BT工具),gtk-gnutella(音乐P2P)
14.终端:mlterm + screen
15.中英文学习:stardict(星际译王),reciteword(黑客学单词)
16.思维工具:freemind
17.输入法:fcitx
C陷阱与缺陷(1)
第一章 词法陷阱
1.1 =不同于==
注意赋值操作符与比较操作符的区别,注意操作符之间的优先级问题。
1.3 词法中的贪心法
a+++b 等价于 (a++)+ b
y=x/*p 编译器可能会认为/*是注释的开始,而不是说x 除以p指向的值,这里会产生歧义。因此最好用括号括起来:y=x/(*p)
1.5字符与字符串
用单引号引起的一个字符实际上代表的是一个整数。整数值对应于该字符在编译器采用的字符集中的序列值。
用双引号引起的字符串,代表的是一个指向无名数组起始字符的指针,该数组被双引号之间的字符以及一个额外的二进制值的字符 ” \ 0 “初始化。
开篇
博客的一个作用
发现csdn的博客通常都是将博客用来作读书笔记的!我也发现这样做是有些好处的,起码可以提醒自己要记得看书。(我总是看一半就没看下去)并且看完的的书的章节做些笔记是对记忆很有用处的事情!之后回来看,无论写了些什么都总会因此而想起当时的记忆。这的确是件不坏的事情。因为人的记忆其实是很不可靠的东西,因此做笔记是很有必要的!另外也可以为博客充充数!呵呵!
新建了读书笔记这个类别,主要是针对自己的!
毕业了
毕业了!
什么意义呢?以后再也不用上课了,或者这样说,以后想上课也没得上了!再也没有学校上了!或者说,再也不用上学校了!
今天毕业,立此为据!
对网络的审美疲劳!
对网络的审美疲劳!
看新闻吧,好多事情其实都不关我的事,明星的事也就更无聊了!订阅了新浪的社会新闻的RSS,每天都看到大量的强奸,杀人的新闻。犯罪者年龄越来越青,手段越来越残忍,动机却越来越离奇。其它的网站上则到处充斥着色情的广告信息。QQ上的人也都总是处于无聊状态中~~~
以前对网络太依赖了!以后少上点Q,多点重视身边的人,网络毕竟太过于虚无,是我们不能承受的轻。努力戒网中~
回来
博客好久没更新了!现在靜悄悄地回来吧!说不定哪一天我再一次静悄悄地走哩!
给张自己的背影
看看!
