1
BGLL 2014-11-30 00:19:17 +08:00 1
研究各种算法,无底洞,够你琢磨了
|
2
sophymax 2014-11-30 00:27:01 +08:00 2
1 研究数据结构 , 不必理会书里面的写法 , 只需要知道结构自己用各种链表指针撸出来就行了 , 注意下内存的处理
2 有精力的话翻下汇编 , 不一定学会 , 是让自己理解各种内存之间的关系 , 我开始那时候只会用汇编 ,写了一堆程序(读写软盘什么的) , 然后后来学C的时候指针几乎没费任何功夫 , 很快就是想怎么写就怎么写的程度 |
3
durrrr 2014-11-30 00:32:27 +08:00 1
写个 web 服务器玩?好多东西都可以复习到
|
4
phoneli 2014-11-30 00:33:49 +08:00 1
写点小程序,再学习啊c++,再写点小程序,再学习下unix,再玩下linux,再写下网络编程,再来这里提问。
|
5
huxh10 2014-11-30 00:37:07 +08:00 1
一个方向是算法和数据结构,比如《算法导论》、《数据结构与算法分析:C语言描述》,刷一刷OJ或者*code;另一个方向是系统编程,《linux programming by example the fundamentals》;之前还听人说过,学C语言看kernel之类的。不过话说回来C的语法真的学完了么,《C专家编程》、《C和指针》、《C陷阱与缺陷》...
|
6
mckelvin 2014-11-30 01:00:58 +08:00 via iPad 1
找个感兴趣的实际需求,阅读现有实现(已有开源库)代码,尝试改动并优化它们。顺路推销一些工具:cmake, valgrind, callgrind, qcachegrind.
|
7
bombless 2014-11-30 01:24:10 +08:00 1
做编译器吧……
简单一点的话就做点HTTP啥的,实现个FTP啊SMTP或者HTTP代理、SOCKS5代理啥的。 |
8
hx1997 OP @huxh10 语法学完是说会写出相应的代码,但不保证了解其高级用法,也不保证不会犯错,尤其是指针这些,感觉这些需要在实际运用中积累。我本来想说已入门的,但是又怕入门的定义不清楚,所以说成了学完语法,没想到还是有歧义。真正学完(精通)也不是一时半会的事吧。
谢谢建议。 |
9
Cee 2014-11-30 01:27:46 +08:00 1
我都不敢说我学完c的语法。。。
|
11
Cee 2014-11-30 01:36:45 +08:00 1
|
12
lincanbin 2014-11-30 03:05:23 +08:00 1
不断地练习,你可以去一些产品经理/天使投资/众酬的社区,抄几个点子来实现一下试试。
|
13
besto 2014-11-30 03:45:14 +08:00 1
@huxh10 这位说的比较实际,推荐的书都不错。
不过我的建议是,如果你真的是想用C,用C吃饭,把TCPL上所有的题目都做了,都很简单,但是想做对没那么容易。 |
14
pagict 2014-11-30 08:47:42 +08:00 1
|
15
zhangdawei 2014-11-30 09:46:04 +08:00 1
找个公司写C
|
16
freeze 2014-11-30 10:32:10 +08:00 via iPhone 1
单片机
|
17
xuwenmang 2014-11-30 10:50:18 +08:00 1
研究PHP核心,有个研究方向不错。。。
|
18
402124773 2014-11-30 10:54:06 +08:00 1
C语言能干嘛,C语言能做绝大部分IT的事情,如同操作系统,网络协议等等。学了C语言的语法能干嘛?感觉能做的事情不多,1.练习算法,用c语言实现。看看《数据结构和算法分析》,《算法导论》。2.学习linux内核,《linux内核设计与实现》《linux设备驱动程序》《深入理解linux》等等。其他的不太了解
|
19
acros 2014-11-30 11:51:38 +08:00 via iPhone 1
看几个著名的开源c写的程序。
确定语法层面没问题,比如quake,doom引擎.... |
20
acros 2014-11-30 11:54:05 +08:00 via iPhone 1
要提高我觉得可以直接把c自带的库都看过去。比如stdio啥的,我学了c几年后才了解有atexit存在,暴汗。
|
21
nicai000 2014-11-30 11:59:56 +08:00 1
多写, 无他
|
22
xjliao 2014-11-30 18:59:14 +08:00 1
写个编译器 试试
|
23
fishleen 2014-12-01 02:34:13 +08:00 via iPhone 1
如果想更深的话,推荐扫完这本书:c interfaces and implementations
代码风格紧凑,各种高级的宏的用法,以及有助于理解数据结构。 就算对着书敲一遍代码也十分有益z |
24
chuangbo 2014-12-01 09:47:58 +08:00 1
写一个简单的 DNS 授权(或递归)服务器。几个简单的功能就可以用到以下知识点:
- 命令行参数 - Daemon 后台运行:进程 - 读取配置文件:文件 - 接收请求:网络 - 响应请求:查找数据 + 网络 I/O 模型 DNS 或许是最简单的网络协议了。数据包可以看这个文档,清晰易懂,没废话。 http://www.networksorcery.com/enp/protocol/dns.htm 测试 DNS 用 dig 命令就行,windows/Mac/Linux 都可以安装。 麻雀虽小,五脏俱全。 |