s****e 发帖数: 1180 | 1 想系统学一门计算机语言,是学c呢,还是c++?我学的是统计,本科学过c,但纯混了
,学了就和没学一样,后来用R等matrix language写过些程序,但觉得自己对计算机语
言的掌握还只停留在皮毛上,现在想系统学一门语言,c一类的,但不知是该学c,还是
c++,感觉这两门语言还是有一定区别,先末论什么面向对象,光打印这一句,c用
printf,c++用cout。anyway。那我到底该学哪一个呢?还有就是有没有什么书,教怎
样把理论中的algorithm翻译,写成计算几程序的?多谢! | j****x 发帖数: 943 | | T***y 发帖数: 43 | 3 C++,如果不需要定义自己的对象,面向对象那部分可以不学,会用就可以了 | L*****s 发帖数: 6046 | 4 C++的语言更新一点,就你说的打印,c++用cout比C的printf更好。
国内的一些人大概是受谭浩强书的不良影响,割裂地看C和C++,以为C是学c++的前提,是不对的。
C++是C的超集,包括编译器都是兼容的,应该直接学C++,一开始养成好的风格。 | s****e 发帖数: 1180 | 5 感觉你的回复有参考价值。我想请教你两个问题,1。是不是理论上基本上所有算法用
不同的语言(c,c++,python,perl)都能写成程序,差别只在语法?2。这两天在看
一本书 《algorithms in c》 by robert Sedgewick,里面提到一些东西, 如
recursion,不知道这些东西在所有的语言中是不是都是通用的(包括 c, c++, perl,
python, R, SAS/IML).多谢!
前提,是不对的。
【在 L*****s 的大作中提到】 : C++的语言更新一点,就你说的打印,c++用cout比C的printf更好。 : 国内的一些人大概是受谭浩强书的不良影响,割裂地看C和C++,以为C是学c++的前提,是不对的。 : C++是C的超集,包括编译器都是兼容的,应该直接学C++,一开始养成好的风格。
| g****t 发帖数: 31659 | 6 取决于你做什么.
如果是做打印机固件或者驱动程序,bios,工业控制,那肯定是c阿.
总体来讲,c比c++难很多,因为它应用范围广.从汽车到飞机,从微波炉到PC.
和硬件直接接触那层的程序,多半是c开发的.
各行有各行的门道.王老师所谓的"好的风格"其实是不存在的定义.
c++常用在应用程序这一层而已.而且目前可能没有java份额大了.
另外c是表达思想和交流的工具.做软件不懂c是难以想象的.
感觉你的回复有参考价值。我想请教你两个问题,1。是不是理论上基本上所有算法用
不同的语言(c,c++,python,perl)都能写成程序,差别只在语法?2。这两天在看
一本书 《algorithms in c》 by robert Sedgewick,里面提到一些东西, 如
recursion,不知道这些东西在所有的语言中是不是都是通用的(包括 c, c++, perl,
python, R, SAS/IML).多谢!
前提,是不对的。
【在 s****e 的大作中提到】 : 感觉你的回复有参考价值。我想请教你两个问题,1。是不是理论上基本上所有算法用 : 不同的语言(c,c++,python,perl)都能写成程序,差别只在语法?2。这两天在看 : 一本书 《algorithms in c》 by robert Sedgewick,里面提到一些东西, 如 : recursion,不知道这些东西在所有的语言中是不是都是通用的(包括 c, c++, perl, : python, R, SAS/IML).多谢! : : 前提,是不对的。
| L*****s 发帖数: 6046 | 7 我只用过C,C++, 1和2的答案是肯定的,基本的算法在两种语言都能实现(效率有维小
差异)。C++和C的最大区别是C++比C多了面向对象的语法功能。
大部分语句是一样的,少量的如printf,cout不同。你可以直接学C++, 用C++的语句来
实现你的算法,只是不需用到C++那些面向对象的特性而已。而且两者的编译环境都是
同一个,可以自动识别是C或C++的语句.
,
【在 s****e 的大作中提到】 : 感觉你的回复有参考价值。我想请教你两个问题,1。是不是理论上基本上所有算法用 : 不同的语言(c,c++,python,perl)都能写成程序,差别只在语法?2。这两天在看 : 一本书 《algorithms in c》 by robert Sedgewick,里面提到一些东西, 如 : recursion,不知道这些东西在所有的语言中是不是都是通用的(包括 c, c++, perl, : python, R, SAS/IML).多谢! : : 前提,是不对的。
| L*****s 发帖数: 6046 | 8 你说的"c比c++难很多,因为它应用范围广", 是指编程者的专业应用知识了, 不是C和
C++语言本身。
【在 g****t 的大作中提到】 : 取决于你做什么. : 如果是做打印机固件或者驱动程序,bios,工业控制,那肯定是c阿. : 总体来讲,c比c++难很多,因为它应用范围广.从汽车到飞机,从微波炉到PC. : 和硬件直接接触那层的程序,多半是c开发的. : 各行有各行的门道.王老师所谓的"好的风格"其实是不存在的定义. : c++常用在应用程序这一层而已.而且目前可能没有java份额大了. : 另外c是表达思想和交流的工具.做软件不懂c是难以想象的. : : 感觉你的回复有参考价值。我想请教你两个问题,1。是不是理论上基本上所有算法用 : 不同的语言(c,c++,python,perl)都能写成程序,差别只在语法?2。这两天在看
| g****t 发帖数: 31659 | 9 对.我指的是应用知识.
c在各种地方的不同应用行业之间,往往有不同的一套"好的风格".
c++应用面窄,所以"好的风格"可能并没有那么多.
你说的"c比c++难很多,因为它应用范围广", 是指编程者的专业应用知识了, 不是C和
C++语言本身。
【在 L*****s 的大作中提到】 : 你说的"c比c++难很多,因为它应用范围广", 是指编程者的专业应用知识了, 不是C和 : C++语言本身。
| L*****s 发帖数: 6046 | 10 打个比方,如果说C是一把刀,c++就是把瑞士军刀。对于与硬件有关的底层应用,普通的刀更锐利一些 。而大多情况,瑞士军刀当刀用也够了,只要不考虑军刀上的剪刀,开瓶器啥的,瑞
士军刀就可以当一般的刀用。 | a***n 发帖数: 3633 | 11 printf/cout坦白说是末节,是一个语言的I/O部分。我的看法是C和C++有着
鲜明的继承关系。学习C++不说对C有相当的掌握,至少要有一个合格的基础。
C++的各类教材不是假定你已经知道C就是在前面几章补充了C的基本知识。
C是面对硬件的,基本上每种处理器都有C的实现。当程序复杂到一定程度,
需要把数据代码合理的组织起来,尽可能的利用问题的内在关系来简化编程。
这个时候C++就可以派上用场。
你的情况应该先复习一下C。或者也可以按照楼上建议的开始C++,不过还是
要先掌握基本语句(实际上就是C的部分)再学习面对对象比如包装继承等(C++
的部分)
最后一个问题:怎样把理论中的algorithm翻译写成程序?这问题我不知道怎么
回答。各种计算机语言教程不都是叫你这个事情的么?
【在 s****e 的大作中提到】 : 想系统学一门计算机语言,是学c呢,还是c++?我学的是统计,本科学过c,但纯混了 : ,学了就和没学一样,后来用R等matrix language写过些程序,但觉得自己对计算机语 : 言的掌握还只停留在皮毛上,现在想系统学一门语言,c一类的,但不知是该学c,还是 : c++,感觉这两门语言还是有一定区别,先末论什么面向对象,光打印这一句,c用 : printf,c++用cout。anyway。那我到底该学哪一个呢?还有就是有没有什么书,教怎 : 样把理论中的algorithm翻译,写成计算几程序的?多谢!
| a***n 发帖数: 3633 | 12 我先抢答第二个问题,是。所有目前的处理器都是由数学运算,储存,
逻辑判断,流程控制这些东西组成的。所以算法是通用的,事实上
不少算法书特地用一种虚构的计算机语言来书写。
第一个问题:理论上可以,不过各种语言都有自己的特色。比如C的
简洁,平台多。perl的长于字符处理,python对XML支持的十分出色。
所以在实际中,你会发现有的算法早已被语言自动实现,不需要自己重写一遍。
此外,使用何种语言往往根据工作环境而定。所以我建议你学习C,因为非常
多的语言都特意借鉴C的格式以降低入门门槛。另外这和你学习C++的语句根本
就是一回事。I/O的实现在各种语言中都是外围部分。
,
【在 s****e 的大作中提到】 : 感觉你的回复有参考价值。我想请教你两个问题,1。是不是理论上基本上所有算法用 : 不同的语言(c,c++,python,perl)都能写成程序,差别只在语法?2。这两天在看 : 一本书 《algorithms in c》 by robert Sedgewick,里面提到一些东西, 如 : recursion,不知道这些东西在所有的语言中是不是都是通用的(包括 c, c++, perl, : python, R, SAS/IML).多谢! : : 前提,是不对的。
| g****t 发帖数: 31659 | 13 这年头糙快猛的code已经不值钱了.
根工业控制有关的程序,都是一点一点仔细抠的.因为你要你的产品更有竞争力.
c++压根没可能被使用.其实很多场合是恨不得用汇编,但c开发速度实在是快太多.
性价比太高,所以大家都使用c.
就是应用程序层的工作,java也不比c++少了,而且我个人认为
这个趋势还在上升.
打个比方,如果说C是一把刀,c++就是把瑞士军刀。对于与硬件有关的底层应用,普通
的刀更锐利一些 。而大多情况,瑞士军刀当刀用也够了,只要不考虑军刀上的剪刀,
开瓶器啥的,瑞
士军刀就可以当一般的刀用。
【在 L*****s 的大作中提到】 : 打个比方,如果说C是一把刀,c++就是把瑞士军刀。对于与硬件有关的底层应用,普通的刀更锐利一些 。而大多情况,瑞士军刀当刀用也够了,只要不考虑军刀上的剪刀,开瓶器啥的,瑞 : 士军刀就可以当一般的刀用。
| B********e 发帖数: 10014 | 14 有这哆嗦的功夫连c#仨一起学了
【在 s****e 的大作中提到】 : 想系统学一门计算机语言,是学c呢,还是c++?我学的是统计,本科学过c,但纯混了 : ,学了就和没学一样,后来用R等matrix language写过些程序,但觉得自己对计算机语 : 言的掌握还只停留在皮毛上,现在想系统学一门语言,c一类的,但不知是该学c,还是 : c++,感觉这两门语言还是有一定区别,先末论什么面向对象,光打印这一句,c用 : printf,c++用cout。anyway。那我到底该学哪一个呢?还有就是有没有什么书,教怎 : 样把理论中的algorithm翻译,写成计算几程序的?多谢!
|
|