给想做C/C++程序员毕业生的一些建议(一)

tsaiyc 2008-10-10 02:30:52
加精
很多人在问毕业生找工作应该注意点什么,前几天的帖子讲的是招聘,不过是针对有工作经验的兄弟姐妹说的。http://topic.csdn.net/u/20080924/15/3b00a84e-970f-4dea-92f2-868c5d1ad825.html。毕业生的问题这几天才考虑了一下,有些不成熟的意见和建议,写在下面了。

注意,下面的文字是针对普通高校里中等到中等偏上的朋友准备的,如果你太出色,或者太不出色,那么下面的文字并不适合你。

本人有过多次培训应届毕业生的经验,感觉对毕业生也有些了解。

我们都是井底之蛙,我们什么都不会。(高材生千万别看~~这不适合你)

我曾经问过每一个即将接受培训的毕业生们同样一个问题:“你们自认为对C/C++了解吗?”。

90%的人的回答是:比较熟悉。

“为什么这么说?”。“因为大学学过这门课~”。

之后我会问他们一些问题,例如:
现有char a[10][20],回答下面表达式各代表的意义:a, a+1, a[1]+1, *a[1], *a, &a[1][1], &a[1]。
注意,我希望得到的准确的结果,而不是含糊的答案。

结果很吃惊,答对1-2个的有85%,3个以上不到10%。问到枚举和共同体,70%以上摇头。问到函数参数值传递和地址传递的区别,90%表示从来没听过,问到文件读写操作,90%以上一无所知。问到位段,99.99%,惨死。

我说的都是事实。如果你真是这种水平,一定不要奢望找到合适的工作。

谭浩强的书固然好,但大家了解的基本只是表面意思,而且只是其中的一小部分。我们会定义变量,会进行加法运算,会写函数(真正会写的不多),甚至有牛人说我会写宏定义~!仅此而已。如果我让你用C写一个简单的不能再简单的学生信息管理系统,写一个银行系统,敢问有几个人可以真正动笔写出来?

千万别认为自己在学校学习很好,过了CET6,很牛,同学经常夸你,羡慕你的好成绩,千万别把自己真当个人物,商业环境的编码我们从来都没看到过,我们只会写printf(“Hello World!\n”); 仅此而已。

嘿,快醒醒,千万别再做梦了。

一定要正确认识自己的能力,如果你只是去上了C、C++的课,你一无所知;如果你又把这几本书自己看了几遍,你也就算是知道C、C++是个什么东西;如果上面的你都做了,还做了所有书本的课后习题,那么你只是了解一丁点儿;如果你看了老外牛人(stanley等)的2-3本书,那么你可以自豪的说,我了解C、C++。

但是,面试的时候千万别这么说,适合毕业生的两个词汇:了解,熟悉。其它的词是不适合的,说不会,那来面试干啥?说精通,我们不配,也没人会信。

虽然泼了那么多的冷水给大家,只希望大家可以摆正个人的心态,用低人一等的口气去求得一份工作,或者以高人一等的口气去要求一份工作,如果这两种方式让我选择,我毫不犹豫的会选择前者。

今天就写到这里吧。接下来的有时间再说。
...全文
6791 128 打赏 收藏 转发到动态 举报
写回复
用AI写文章
128 条回复
切换为时间正序
请发表友善的回复…
发表回复
uuufff163 2012-08-28
  • 打赏
  • 举报
回复
不错的建议,国内现在还是理论实践脱钩的状态
swamp2011 2011-09-04
  • 打赏
  • 举报
回复
[Quote=引用 93 楼 cz13061134 的回复:]

是你没问对人吧
在我们学校随便叫个人都至少答对4道以上,包括非计算机专业的
[/Quote]
是啊 ,不可能这么差呢,楼主夸张了吧!
swamp2011 2011-09-04
  • 打赏
  • 举报
回复
[Quote=引用 41 楼 lzh9955 的回复:]

现在教育都这样! 要想学精还得靠自学!
[/Quote]
同意观点
意识模糊 2011-06-06
  • 打赏
  • 举报
回复
我的理解是,数组名不就是一个指向数组的const指针??
所以a表示char *const p = a[10][10];//数组首址
a+1 = p+1;
a+1 = p+1;
a[1]+1 = p+21;//a[1][1]地址
*a[1]是a[1]内的char,*a[1]是a[1][0]内的char;
&a[1][1]是a[1][1]地址,&a[1][0]是地址;
共同体是可以存储不同的数据类型,但是能同时存储其中的一种,枚举可以定义字符常量,比如定义星期1到星期天
值传递是把实参的值传给形参,地址传递是把实参地址传给形参实现双向传递;
文件的读写是通过输入和输出流实现的吧,把这2个流和文件关联能实现文件的读写
段位没接触过。。。。不知道是什么
不知道能对几题,都是些基础的东西啊。
哪个牛人帮我这个在校生看看
lixiaoyao129 2011-05-28
  • 打赏
  • 举报
回复
呜呜,好吓人的问题
CalvinMankor 2009-10-17
  • 打赏
  • 举报
回复
题目不是很难呀 都知道
不过有几个不是很准确
最近一直忙硬件设计了 用的汇编语言多些
c/c++好久没用了 有一个学期了吧 期间编过一个小软件
感觉自己学的不咋样 算不上高手
我一同学 几天就编了一个杀毒软件(前几天 流行了一个校庆病毒)
好羡慕
现在自己在学js,不过几星期后 就会看mfc了 呵呵
NBSBXXX 2009-10-16
  • 打赏
  • 举报
回复
还好,我不是LZ说得那种
xiao_yanjing 2009-10-14
  • 打赏
  • 举报
回复
LZ写的很实际,我也是从应届毕业生走过来的,对于面试官的态度--诚实,不过在一定的是由上还是要狡猾点
chenjunliang163 2009-10-07
  • 打赏
  • 举报
回复
太感谢了
芒果仔 2009-10-07
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 sigfield 的回复:]
a            a[0]地址
a+1          好像是a[1]地址
a[1]+1      就是a[1]加1了,char的话算下个字符
*a[1]        好孩子不要这么写程序
*a          a[0]的值
&a[1][1]    正常思维模式是a[1][1]的地址。考官希望的答案是a+11。但是这种考试思维模式实用度为ε。
&a[1]        ?重复题?

[/Quote]

楼主给出的是一个二维数组
a[10][20]应给先看成是a[10],然后每个下标再附带20个元素的数组(有点绕口)
yanggan666666 2009-10-07
  • 打赏
  • 举报
回复
还行
midspace 2009-10-07
  • 打赏
  • 举报
回复
写的不错~~~·
zanghongtu2006 2009-10-07
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 sigfield 的回复:]
a            a[0]地址
a+1          好像是a[1]地址
a[1]+1      就是a[1]加1了,char的话算下个字符
*a[1]        好孩子不要这么写程序
*a          a[0]的值
&a[1][1]    正常思维模式是a[1][1]的地址。考官希望的答案是a+11。但是这种考试思维模式实用度为ε。
&a[1]        ?重复题?
[/Quote]
除了第一个,你基本没说对啊,C++就算是作为一个赚钱工具,也得你拿的起工具才能赚钱吧.
lihuixin124 2009-10-06
  • 打赏
  • 举报
回复
Yiooo 2009-10-06
  • 打赏
  • 举报
回复
97楼说的对我有用,很感谢。
lz嘛,别老拿大学生当笑柄,不是每个人都这样的
wzywsk 2009-10-05
  • 打赏
  • 举报
回复
加油学习吧~~
na2650945 2009-10-05
  • 打赏
  • 举报
回复
看后给自己鼓励了。
fangjm2009 2009-09-25
  • 打赏
  • 举报
回复
不错
  • 打赏
  • 举报
回复
路过
Starlc_01 2009-08-17
  • 打赏
  • 举报
回复
有没有点实际性的
加载更多回复(108)

590

社区成员

发帖
与我相关
我的任务
社区描述
提出问题
其他 技术论坛(原bbs)
社区管理员
  • community_281
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧