会员
周边
新闻
博问
闪存
众包
赞助商
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Forever Hello World
Oh, my god. Segment fault.
博客园
新随笔
管理
随笔分类 -
TCPL
TCPL——练习6.5 & 6.6
摘要:这两道习题综合起来是利用散列表写个适用C语言的简单#define处理器,只能处理#define/#undef不带参数的情形,并且#define后面必须带值。不带值其实也就是加多一个处理,分辨#define语句是否已经结束。这里输入代码我用的是TCPL的getch, ungetch,其实本应该直接读入一个C文件,可是这里我偷懒了。读入文件的话处理代码差别也不大。我把代码分为几个模块:hash.c:散...
阅读全文
posted @
2010-11-23 01:13
Linjian
阅读(430)
评论(0)
推荐(0)
TCPL——练习3.3
摘要:TCPL练习3-3的题目是这样的:函数expand(s1, s2),将字符串中s1中类似a-z的速记扩展为:abcd...xyz,并能处理大小写,并可以处理a-b-c-d, a-z0-9, -a-z这样的情况,前导的-字符照样排印。 我记得这道题在豆瓣上看朋友用PY写得很简洁,用C写的代码看起来比较累赘,可能也是我想得比较复杂。代码:代码执行结果如下:代码PS:刚才看了TCAB,里面的答案写得很...
阅读全文
posted @
2010-11-09 00:31
Linjian
阅读(321)
评论(0)
推荐(0)
TCPL——练习1.13
摘要:坚持每天写一两道小练习:-) TCPL练习1.13: 编写一个程序,打印输入中单词长度的水平和垂直直方图。很简单,就是垂直的时候,我用了二维数组,真是浪费空间啊。当然有局限性,只能规定单词长度在什么范围内。TCAB里面通过一条数学运算,没借助二维数组来实现,我没有验证,也没有看懂那运算是怎么得出结果的。代码
阅读全文
posted @
2010-11-01 23:32
Linjian
阅读(332)
评论(0)
推荐(0)
TCPL——练习1.9
摘要:打算这段时间重新拜读TCPL这本经典著作,并把后面的习题都做一遍。结果,发现我的决定是多么的正确,多么有必要。 原因在于下午一道练习题,很简单:编写一个将输入复制到输出的程序,并将其中连续的多个空格用一个空格来表示。 很简单,本来前几章的练习都不打算写,因为之前国庆回家正好带回了一本《The C Answer Book》,就打算写写然后看看答案。不假思索我就写了一个程序:代码这当然能正确运行。...
阅读全文
posted @
2010-10-31 17:59
Linjian
阅读(376)
评论(0)
推荐(0)
公告