x*****7 发帖数: 7326 | 1 最近辅导一个TJ高中的学生写C语言程序,他大概是准备以后做Arduino.
我因为过去20多年写C++和Java习惯了,总是用一个变量之前才declare,而不是在main
()开头或者一个block开头声明该变量,而且我很多年没有写C了,辅导他时携带的笔记
本没有装gcc,只有十几年前安装的Visual Studio老版本,我也从来没有进行设置,
default是ANSI C88。
我向他演示我写的程序片段,竟然无法编译,说是semicolon位置错误,但我反复检测
,根本没有哪个错误!
他很聪明,让我把我写的程序片段电邮给他。他直接在他笔记本的Linux下gcc编译,没
有任何问题。
这时我才恍然大悟:ANSI C88年代,一个变量的declaration,必须是在一个程序头或
者一个程序块的头,不能在中间。好在今天gcc版本没有这个限制。
接着我又犯了一个老年人的错误。他用//加comments,我说这个是C++引入的,写C得用
/* */。他疑惑地望着我。
这次课以后,他再也不联系我了。
其实我没有犯错误,只是我的C是1990年大学学的,知识没有更新。今天的C更像C++,
变量任何地方都可以declare,注释随便用/* */或// |
M********n 发帖数: 4650 | |
Y********g 发帖数: 1 | 3 你是不是还在用turbo c 2.0
main
【在 x*****7 的大作中提到】 : 最近辅导一个TJ高中的学生写C语言程序,他大概是准备以后做Arduino. : 我因为过去20多年写C++和Java习惯了,总是用一个变量之前才declare,而不是在main : ()开头或者一个block开头声明该变量,而且我很多年没有写C了,辅导他时携带的笔记 : 本没有装gcc,只有十几年前安装的Visual Studio老版本,我也从来没有进行设置, : default是ANSI C88。 : 我向他演示我写的程序片段,竟然无法编译,说是semicolon位置错误,但我反复检测 : ,根本没有哪个错误! : 他很聪明,让我把我写的程序片段电邮给他。他直接在他笔记本的Linux下gcc编译,没 : 有任何问题。 : 这时我才恍然大悟:ANSI C88年代,一个变量的declaration,必须是在一个程序头或
|
l*******k 发帖数: 922 | 4 计算机的东西更新太快,3天不学习,跟不上刘少奇了。你很多年没写,教人之前一定
要自己做一遍。
我还是每天和程序打交道的。有几年没太用Java,最近小孩子在学,发现现在多了很多
新的功能。现在的程序很多写法完全都不一样了。 |
x*****7 发帖数: 7326 | 5 上大学的时候是用Turbo C,但来美国以后读计算机硕士就是用MS Visual Studio了。
其实我的几台Linux笔记本上缺省都有gcc,但那天我事先没准备,就拿起十几年新的
Win笔记本,上面有十几年没有动过的VS,没有设置,而且编译出错信息说是;放错了位
置,其实是ANSI C88只允许在模块开头declare变量,不允许在中间declare,但我老了
,好几分钟都弄不明白。
【在 Y********g 的大作中提到】 : 你是不是还在用turbo c 2.0 : : main
|
x*****7 发帖数: 7326 | 6 很可惜,十几年前的MS VS,编译时只给我一行出错信息:
Line xxx: The ; is misplaced.
但我程序根本没有那个;问题!
我程序唯一问题是我是按C++写法,随地declare新变量,没有遵守C88要求在模块头部
declare。
好在学生聪明,他知道该用现在的gcc编译,算是帮我解了围。
但我随后不允许他在C中用//,让他以为我是程序白痴。 |
x*****7 发帖数: 7326 | 7 我十几年没写过C了。
其实我在Iowa时,学第一门本科CS课,数据结构,就已经是C++。
【在 l*******k 的大作中提到】 : 计算机的东西更新太快,3天不学习,跟不上刘少奇了。你很多年没写,教人之前一定 : 要自己做一遍。 : 我还是每天和程序打交道的。有几年没太用Java,最近小孩子在学,发现现在多了很多 : 新的功能。现在的程序很多写法完全都不一样了。
|
x*****7 发帖数: 7326 | 8 Java还好,我当年学的是1.2,20年前写的老程序今天run绝对不会有问题,顶多就是来
个warning,说我用的API已经deprecated了。
我前几年考的Java两个证书是Java8的,而本地中小学教的是Java7,所以教他们绰绰有
余。
【在 l*******k 的大作中提到】 : 计算机的东西更新太快,3天不学习,跟不上刘少奇了。你很多年没写,教人之前一定 : 要自己做一遍。 : 我还是每天和程序打交道的。有几年没太用Java,最近小孩子在学,发现现在多了很多 : 新的功能。现在的程序很多写法完全都不一样了。
|
s*l 发帖数: 9421 | 9 尼玛, cyclone?
: 我十几年没写过C了。
: 其实我在Iowa时,学第一门本科CS课,数据结构,就已经是C 。
【在 x*****7 的大作中提到】 : Java还好,我当年学的是1.2,20年前写的老程序今天run绝对不会有问题,顶多就是来 : 个warning,说我用的API已经deprecated了。 : 我前几年考的Java两个证书是Java8的,而本地中小学教的是Java7,所以教他们绰绰有 : 余。
|
l*******k 发帖数: 922 | 10 Java新版本的兼容老版本。 但你要教学生的话需要了解新的功能啊。比如for each,
try block with resources.如果你写程序的话,能用的话应该尽量用这些功能。我也
是看了别人的程序才知道的。
【在 x*****7 的大作中提到】 : Java还好,我当年学的是1.2,20年前写的老程序今天run绝对不会有问题,顶多就是来 : 个warning,说我用的API已经deprecated了。 : 我前几年考的Java两个证书是Java8的,而本地中小学教的是Java7,所以教他们绰绰有 : 余。
|
L*****s 发帖数: 6046 | 11 遇到JS这样的动态语言,变量无需提前声明,直接用的,老蒋们更是不懂了。 |
W******y 发帖数: 1 | 12 虾蟹你一个靠烧黄纸,穿道袍,急急如律令,预测哪里地震的居然去教别人C语言了?
你问问这里的码农,有几个敢出来说自己C语言。绝大部分大学教授一辈子就只会一门C
语言呢。 |
c****o 发帖数: 32446 | 13 楼主你这个水平,还是别去教小朋友编程了
不说别的,为什么非要用VS? |
y****g 发帖数: 36950 | 14 LOL 面向运气编程
门C
【在 W******y 的大作中提到】 : 虾蟹你一个靠烧黄纸,穿道袍,急急如律令,预测哪里地震的居然去教别人C语言了? : 你问问这里的码农,有几个敢出来说自己C语言。绝大部分大学教授一辈子就只会一门C : 语言呢。
|
b******l 发帖数: 860 | 15 要码公都这样我们非码公可咋办?最近也是娃娃上了高中,选了foundation of
computer science. 娃初中没学过计算机,不过我想一个高中一年级的foundation课能
有啥就鼓动着娃选了。结果上来第一课就是recursive thinking. 娃问我把我搞晕了,
好在我虽然不是码公,但偶尔也是要用下Python写个小程序的,捣鼓了几晚上帮娃搞定
了第一课95%的作业(最高的5%实在搞不定了)。结果这周开始第二课是cryptography
,第一道题什么凯撒密码啥的还好,到了第二道题是破解Vigenere Cipher,看了半天
维基百科都没弄明白原理,什么Friedman test,Kasiski test完全头大。心想这还是
高一的foundation,尼玛后面还有advanced,ap,估计彻底帮不上忙了。
【在 M********n 的大作中提到】 : 码工的悲哀,永远学不完,很快就会被后浪拍死
|
s*****r 发帖数: 43070 | 16 属实,天天学呀学,就为了保住饭碗
俺不打算让娃学CS,学个大学学几年,以后也没说更新的就好了
【在 M********n 的大作中提到】 : 码工的悲哀,永远学不完,很快就会被后浪拍死
|
s*****r 发帖数: 43070 | 17 想想以后四五十岁了,面试还是折腾这些玩意,觉得悲哀不
cryptography
【在 b******l 的大作中提到】 : 要码公都这样我们非码公可咋办?最近也是娃娃上了高中,选了foundation of : computer science. 娃初中没学过计算机,不过我想一个高中一年级的foundation课能 : 有啥就鼓动着娃选了。结果上来第一课就是recursive thinking. 娃问我把我搞晕了, : 好在我虽然不是码公,但偶尔也是要用下Python写个小程序的,捣鼓了几晚上帮娃搞定 : 了第一课95%的作业(最高的5%实在搞不定了)。结果这周开始第二课是cryptography : ,第一道题什么凯撒密码啥的还好,到了第二道题是破解Vigenere Cipher,看了半天 : 维基百科都没弄明白原理,什么Friedman test,Kasiski test完全头大。心想这还是 : 高一的foundation,尼玛后面还有advanced,ap,估计彻底帮不上忙了。
|
b******l 发帖数: 860 | 18 四五十岁宁肯开Uber也不去面试了。其实人就是弄娃费钱,娃出去了之后真不需要高薪
工作。开心就好
: 想想以后四五十岁了,面试还是折腾这些玩意,觉得悲哀不
: cryptography
【在 s*****r 的大作中提到】 : 想想以后四五十岁了,面试还是折腾这些玩意,觉得悲哀不 : : cryptography
|
r*g 发帖数: 3159 | 19 这些TJ学生为什么乱找tutor? 当地Tutor很紧缺么? 为什么有各种学生找xiaxie辅导
各种不同的功课? |
l*******k 发帖数: 922 | 20 这个是牛校啊,搞那么难?
cryptography
【在 b******l 的大作中提到】 : 要码公都这样我们非码公可咋办?最近也是娃娃上了高中,选了foundation of : computer science. 娃初中没学过计算机,不过我想一个高中一年级的foundation课能 : 有啥就鼓动着娃选了。结果上来第一课就是recursive thinking. 娃问我把我搞晕了, : 好在我虽然不是码公,但偶尔也是要用下Python写个小程序的,捣鼓了几晚上帮娃搞定 : 了第一课95%的作业(最高的5%实在搞不定了)。结果这周开始第二课是cryptography : ,第一道题什么凯撒密码啥的还好,到了第二道题是破解Vigenere Cipher,看了半天 : 维基百科都没弄明白原理,什么Friedman test,Kasiski test完全头大。心想这还是 : 高一的foundation,尼玛后面还有advanced,ap,估计彻底帮不上忙了。
|
r*g 发帖数: 3159 | 21 方便说哪个学校/哪里的么? 开这么高水平的课。
cryptography
【在 b******l 的大作中提到】 : 要码公都这样我们非码公可咋办?最近也是娃娃上了高中,选了foundation of : computer science. 娃初中没学过计算机,不过我想一个高中一年级的foundation课能 : 有啥就鼓动着娃选了。结果上来第一课就是recursive thinking. 娃问我把我搞晕了, : 好在我虽然不是码公,但偶尔也是要用下Python写个小程序的,捣鼓了几晚上帮娃搞定 : 了第一课95%的作业(最高的5%实在搞不定了)。结果这周开始第二课是cryptography : ,第一道题什么凯撒密码啥的还好,到了第二道题是破解Vigenere Cipher,看了半天 : 维基百科都没弄明白原理,什么Friedman test,Kasiski test完全头大。心想这还是 : 高一的foundation,尼玛后面还有advanced,ap,估计彻底帮不上忙了。
|
Y********g 发帖数: 1 | 22 你娃上的,是不是stanford 附中。
cryptography
【在 b******l 的大作中提到】 : 要码公都这样我们非码公可咋办?最近也是娃娃上了高中,选了foundation of : computer science. 娃初中没学过计算机,不过我想一个高中一年级的foundation课能 : 有啥就鼓动着娃选了。结果上来第一课就是recursive thinking. 娃问我把我搞晕了, : 好在我虽然不是码公,但偶尔也是要用下Python写个小程序的,捣鼓了几晚上帮娃搞定 : 了第一课95%的作业(最高的5%实在搞不定了)。结果这周开始第二课是cryptography : ,第一道题什么凯撒密码啥的还好,到了第二道题是破解Vigenere Cipher,看了半天 : 维基百科都没弄明白原理,什么Friedman test,Kasiski test完全头大。心想这还是 : 高一的foundation,尼玛后面还有advanced,ap,估计彻底帮不上忙了。
|
z*****n 发帖数: 36 | 23 菌斑不是有个人说美国高中大学就是要故意把学生搞糊涂吗?当然要难点
【在 l*******k 的大作中提到】 : 这个是牛校啊,搞那么难? : : cryptography
|
b**e 发帖数: 1476 | 24 有什么悲哀的
不是折腾这个就是折腾那个
折腾什么不一样?
【在 s*****r 的大作中提到】 : 想想以后四五十岁了,面试还是折腾这些玩意,觉得悲哀不 : : cryptography
|
W******y 发帖数: 1 | 25 洗脚改行傻逼居然接话,你不知道被钓鱼了,才发傻逼感慨的吧?
你知道他是在说什么不?——那是一门专门的课程,叫做应用密码学,一门基础课。
可惜奥你个改行傻逼,顶多会个if....,你都不懂到底在说什么范围类的事,自认为自己
是个ITer,乱发感慨。
【在 s*****r 的大作中提到】 : 想想以后四五十岁了,面试还是折腾这些玩意,觉得悲哀不 : : cryptography
|
x*****7 发帖数: 7326 | 26 Most of my students got 800 in SAT or SAT2 math.
【在 r*g 的大作中提到】 : 这些TJ学生为什么乱找tutor? 当地Tutor很紧缺么? 为什么有各种学生找xiaxie辅导 : 各种不同的功课?
|
x*****7 发帖数: 7326 | 27 I was an expert on C in 1990.
门C
【在 W******y 的大作中提到】 : 虾蟹你一个靠烧黄纸,穿道袍,急急如律令,预测哪里地震的居然去教别人C语言了? : 你问问这里的码农,有几个敢出来说自己C语言。绝大部分大学教授一辈子就只会一门C : 语言呢。
|
x*****7 发帖数: 7326 | 28 I normally use g++ and make
【在 c****o 的大作中提到】 : 楼主你这个水平,还是别去教小朋友编程了 : 不说别的,为什么非要用VS?
|
W******y 发帖数: 1 | 29 你他妈就一坨屎
你会c语言,那任何大专本科的人都会,因为第一年第一学期通识课,都会说C语言
有点常识加点羞耻心,再来秀吧。老子还会相对论呢,不就是那个公式么
【在 x*****7 的大作中提到】 : I was an expert on C in 1990. : : 门C
|
n*********2 发帖数: 357 | 30 你家娃的foundation of computer science最近有啥更新的吗?
cryptography
【在 b******l 的大作中提到】 : 要码公都这样我们非码公可咋办?最近也是娃娃上了高中,选了foundation of : computer science. 娃初中没学过计算机,不过我想一个高中一年级的foundation课能 : 有啥就鼓动着娃选了。结果上来第一课就是recursive thinking. 娃问我把我搞晕了, : 好在我虽然不是码公,但偶尔也是要用下Python写个小程序的,捣鼓了几晚上帮娃搞定 : 了第一课95%的作业(最高的5%实在搞不定了)。结果这周开始第二课是cryptography : ,第一道题什么凯撒密码啥的还好,到了第二道题是破解Vigenere Cipher,看了半天 : 维基百科都没弄明白原理,什么Friedman test,Kasiski test完全头大。心想这还是 : 高一的foundation,尼玛后面还有advanced,ap,估计彻底帮不上忙了。
|
n********t 发帖数: 21 | 31 看中文的原理。维基写得花狸狐哨的。
cryptography
【在 b******l 的大作中提到】 : 要码公都这样我们非码公可咋办?最近也是娃娃上了高中,选了foundation of : computer science. 娃初中没学过计算机,不过我想一个高中一年级的foundation课能 : 有啥就鼓动着娃选了。结果上来第一课就是recursive thinking. 娃问我把我搞晕了, : 好在我虽然不是码公,但偶尔也是要用下Python写个小程序的,捣鼓了几晚上帮娃搞定 : 了第一课95%的作业(最高的5%实在搞不定了)。结果这周开始第二课是cryptography : ,第一道题什么凯撒密码啥的还好,到了第二道题是破解Vigenere Cipher,看了半天 : 维基百科都没弄明白原理,什么Friedman test,Kasiski test完全头大。心想这还是 : 高一的foundation,尼玛后面还有advanced,ap,估计彻底帮不上忙了。
|
b******r 发帖数: 1 | 32 已经很厉害了。我本科学完c/c 之后的半年就什么都不记得了。。 |
e***d 发帖数: 8248 | 33 虾蟹老师仓促上阵,出糗了
演示片段应该是虾蟹老师的得意之作,贴个截图出来看看? |