[ZT]Line feed and Carriage return

December 10, 2008

今天,我总算搞清楚“回车”(carriage return)和“换行”(line feed)这两个概念的来历和区别了。
在计算机还没有出现之前,有一种叫做电传打字机(Teletype Model 
33)的玩意,每秒钟可以打10个字符。但是它有一个问题,就是打完一行换行的时候,要用去0.2秒,正好可以打两个字符。要是在这0.2秒里面,又有新的字符传过来,那么这个字符将丢失。

于是,研制人员想了个办法解决这个问题,就是在每行后面加两个表示结束的字符。一个叫做“回车”,告诉打字机把打印头定位在左边界;另一个叫做“换行”,告诉打字机把纸向下移一行。

这就是“换行”和“回车”的来历,从它们的英语名字上也可以看出一二。

后来,计算机发明了,这两个概念也就被般到了计算机上。那时,存储器很贵,一些科学家认为在每行结尾加两个字符太浪费了,加一个就可以。于是,就出现了分歧。

Unix 系统里,每行结尾只有“<换行>”,即“\n”;Windows系统里面,每行结尾是“<换行><回车>”,即“ \n\r”;Mac系统里,每行结尾是“<回车>”。一个直接后果是,Unix/Mac系统下的文件在Windows里打开的话,所有文字会变成一行;而Windows里的文件在Unix/Mac下打开的话,在每行的结尾可能会多出一个^M符号。

c语言编程时(windows系统)

\r 就是return 回到 本行 行首 这就会把这一行以前的输出 覆盖掉

如:
int main() {

cout << hahaha << \r << xixi ;

}
最后只显示 xixi 而 hahaha 背覆盖了

\n 是回车+换行 把光标 先移到 行首 然后换到下一行 也就是 下一行的行首拉

int main() {

cout << hahaha << \n << xixi ;

}
则 显示
hahaha
xixi 

Email to real letters

December 3, 2008

Web 0.2 site, turn your email to real letters, charge U by letters count, you can choose the printing font style, or even you can let some people, real people write the letter for U!

Script RPC

December 3, 2008

In c/c++ server design, event call always the painful part. How to register callback functions:

  • Use global or static method? 
  • Use event class and vritual method call?
  • How to handle the memory between caller and callee?
  • How to pass context, use pointer? use handle?
So many questions need to be taken care, but, maybe under the script world, life will be more easy…..
Lua thoughts:
  • Use coroutines, when do an async call, we stop this coroutine, when callback, we resume the coroutine, so each context is there, we do not need pass anything, only the coroutine handler.
  • Functional languange easy to pass or generate callback function, so handler some very simple callback event, are very convenient.

SNS BBS way

February 20, 2008

SNS和BBS每天累计着大量用户的活动,这些活动有很大一部分被沉淀下来成为有用的资讯。比如说怎么买电话卡,怎么做菜,又或者如何辅导孩子,某种型号的手机出了何种问题如何维修,如何给游戏机添加冷却装置。

这些积累都是SNS和BBS最有价值的部分,新用户往往是为了寻找这样的信息而进行注册和翻阅的。时间越悠久的社区这种有价值的信息就越多。然而我们的BBS和SNS几乎没有提供任何有用的工具帮助用户们来组织,保存分享这样的信息,而是依靠用户自己进行整理和归纳,唯一提供的功能大概就是“置顶”这个功能了。

如果SNS和BBS可以有效的整理归纳和更新这样的信息,肯定可以从中得到好处。让用户更加容易找到信息,可以扩大用户数量。将这些信息中提到的物品进行销售(比如水冷装置,或者某种食谱提及的配料)可以带来一定量的盈利。

 
Powered by Wordpress and MySQL. Theme by Shlomi Noach, openark.org