问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C/C++是先学C语言好还是先学C++好?

发布网友 发布时间:2022-04-21 15:07

我来回答

5个回答

热心网友 时间:2023-07-01 04:05

如果你是个新手,想学好C语言我建议你先学C语言并从如下几个步骤着手!
一,题书结合!
如果你在看C语言教程时可以找一些对应知识点的练习做下,如果那个题搞不懂就多看看书中的知识点!看几回你就会知道一些了!

二,学好C语言的运算符和运算顺序
这是学好《C程序设计》的基础,C语言的运算非常灵活,功能十分丰富,运算种类远多于其它程序设计语言。在表达式方面较其它程序语言更为简洁,如自加、自减、逗号运算和三目运算使表达式更为简单,但初学者往往会觉的这种表达式难读,关键原因就是对运算符和运算顺序理解不透不全。当多种不同运算组成一个运算表达式,即一个运算式中出现多种运算符时,运算的优先顺序和结合规则显得十分重要。在学习中,只要我们对此合理进行分类,找出它们与我们在数学中所学到运算之间的不同点之后,记住这些运算也就不困难了,有些运算符在理解后更会牢记心中,将来用起来得心应手,而有些可暂时放弃不记,等用到时再记不迟。
先要明确运算符按优先级不同分类,《C程序设计》运算符可分为15种优先级,从高到低,优先级为1 ~ 15,除第2、3级和第14级为从右至左结合外,其它都是从左至右结合,它决定同级运算符的运算顺序。下面我们通过几个例子来说明:
(1)5*8/4%10 这个表达式中出现3种运算符,是同级运算符,运算顺序按从左至右结合,因此先计算5 *8=40,然后被4除,结果为10,最后是%(求余数)运算,所以表达式的最终结果为10%10 = 0;
(2)a = 3;b = 5;c =++ a* b ;d =a + +* b;
对于c=++a*b来说,按表中所列顺序,+ +先执行,*后执行,所以+ + a执行后,a的值为4,由于+ +为前置运算,所以a的值4参与运算,C的值计算式为4*5=20而不是3*5=15了;而对于d=a++*b来说,由于a + +为后置运算,所以a值为4参与运算,使得d的值仍为20,而a参与运算后其值加1,值为5。 这个例子执行后,a的值为5,b的值为5,c的值为20,d的值也是20;
(3)(a = 3,b = 5,b+ = a,c = b* 5)
例子中的“,”是逗号结合运算,上式称为逗号表达式,自左向右结合,最后一个表达式的结果值就是逗号表达式的结果,所以上面的逗号表达式结果为40,a的值为3,b的值为8,c的值为40。
(4)a=5;b=6;c=a>b?a:b;
例中的a>b?a:b是一个三目运算,它的功能是先做关系运算a>b部分,若结果为真,则取问号后a的值,否则取冒号后b的值,因此c的值应该为6,这个运算可以用来代替if…else…语句的简单应用。

三,学好C语言的四种程序结构
要把C语言的语法知识记住,因为编程都是以此为基础的!
四,多上机调试
自已写好代码后多在机子去调试,认真想想为什么会错?
不要为得出结果而上机输入代码去验证,一定要分析错的原因!

五,C语言对英语的要求
其实英语不好并不影响C语言的学习,因为C语言的英语都是些关建字,很容易记,看多了就知道了!

另外谭浩强的《c语言程序设计>>这本书也很不错的,你可以到学校的图书馆找了看!
最后祝你学习进步!

热心网友 时间:2023-07-01 04:05

我才把C++学完,学校里教学都是先教授C然后才是C++,个人感觉学完C后学C++感觉会简单很多,学习的时候要注意多做练习题目,会提高比较快,如果你认真学习的话从C到C++半年时间就够了,C++ Primer不是很适合初学者。

以下内容参考:百度

推荐:《The C++ Programming Language》是C++入门者的最佳读物。
理由如下:

1,入门书籍的选择一定要慎之又慎,不然会大大影响初学者对C++的认识。好比在一块木板上钉一颗钉子,如果开头几锤子敲下去就敲歪了,那么以后要想纠正就非常困难了。很多人最后放弃学习C++,就是因为他们被一些不好的书所误导,以至于他们还没有来得及领略C++的恢宏与壮美就鸣金收兵了。这种情况非常令人可惜。有鉴于此,只要有人问我初学C++应该选那本书,我就会毫不犹豫地推荐由C++创始人Bjarne Stroustrup执笔的鸿篇巨制:《The C++ Programming Language》!之所以向大家推荐这本对于初学者而言可能略显艰深的书籍,是因为:选择C++作为学习对象的人一般都是下定决心专业从事软件研发的技术人员。一般而言,他们对计算机领域的各种基础知识是具备一定功底的。如果初学者并不想在程序设计领域深入地走下去,那么,我不会推荐他学习C++,而会推荐他去学习其他语言。

2,不像市面上常见的一些强调学习过程短平快的编程书籍,学习这本书不要贪图速成。因为C++本来就不是一门可以速成的语言。所谓的速成无非是仅仅学会C++的一丁点皮毛。《The C++ Programming Language》这本书可以长时期放在你的枕边伴你入眠,它将伴随着你度过编程生涯的每一个成长阶段。因此买这本书的投资是绝对划算的。表面上看,学习这样的经典著作可能会很慢,会很吃力,但是我相信这才是真正的捷径,因为它不会让你走弯路,不会让你在学习过程中一次又一次地纠正自己在阅读其他低质量C++书籍过程中所慢慢形成的错误观念,所以说:似远实近!

3,OO观念的初步建立是学习C++的前提,必须时刻用OO观念去理解C++的设计决策。OO观念的核心有三条:封装,继承,多态。网上关于OO基本观念的介绍也是多如牛毛。初学者不必急于一下子完全理解它们,因为OO观念的深刻理解只能从长时期的思考和实践过程中获得。这本书的最大特点就是在引入C++各项语法特征的过程中特别注重交待清楚它们的来龙去脉,尤具价值的是,书中每一章后面都给出了极其实用的编程建议(Advice),这些编程建议是国内那些C++作者不可能写得出来的。我这么说绝对不是崇洋媚外。如果说中国的IT技术水平落后国外20年的话,那么中国的IT教育水平至少要落后国外30年。中国目前在IT技术写作领域没有哪一个称得上是大师级别的原创技术作家,大多是靠剪刀加浆糊吃饭的。档次低一点的,直接抄袭和拼凑国外名家的作品;档次高一点的,熟读一下技术标准和规范,然后再翻译成中文,就变成著作了。

4,读完国内作者写的C++书籍之后,你很难获得一种C++究竟强大在何处的认识,好像你只不过是在熟悉一种普通编程语言的语法细节罢了。很多人发出这样的疑问:绝大多数C++的语法概念其他语言也有,比如函数的概念,结构的概念,子程序的概念,类的概念等等,那么究竟是什么样的的特性使得C++成为了目前最具有影响力的编程语言之一呢?这是那些国内C++书籍所不能告诉你的。国内C++书籍大量的着墨点基本上全部落在各种编程语言都具有的这些共性上面,基本上没有看见过有哪本书专门介绍过C++所独具的“特性”。为什么这些作者不讲呢?那是因为C++独具的“特性”通常隐藏于C++的整体设计之中,如果不是像Bjarne Stroustrup那样的骨灰级C++大师,一般的中国作者绝对不可能具备俯瞰C++设计全局的能力。

5,各种编程语言的语法共性基本上人人都可以在很短时间内熟练掌握。关于C++的入门语法介绍,网上免费资料暴多,初学者完全可以一边跟随着这些入门资料的指导,一边在电脑上敲敲打打,从而快速度过学习一门语言的语法熟悉阶段。一旦初学者在短时间内熟悉了C++的基本语法,那么这些国内作者编写的C++书籍基本上就可以束之高阁了。因为这些书籍大多没有什么思想价值,作为技术手册参考一下勉强可以,但如果用来深入掌握C++就只能说是缘木求鱼了。况且这些书通常并不便宜,一般也要30-50元人民币。同学们一般资金有限,所谓好钢要用在刀刃上,与其买一本利用价值不高的书,还不如加一点点钱去购买真正经典的书籍。所以我绝对不会推荐初学者去购买国内作者写的C++书籍。

6,不是说中国在IT领域没有高手,就我所知,中国的技术高手还是有不少的,但是愿意把自己的宝贵经验和心得体会用笔写成书的高手我就极少看到过了。首先,这些经年累月积累下来的知识财富对于一个吃技术饭的人来说实在太宝贵,写成书公开对作者而言实在太吃亏。希望大家承认并接受这个事实。知识本来就具有财产的属性,不然“知识产权”一词从何而来?其次,写书很花时间,基本上是一件燃烧自己照亮别人的雷锋行为。当然,这里的写书指的是作者毫无保留地把自己的精华经验写出来而不是为了敛财而瞎编。最后,目前在中国,通过奉献自己的技术经验来获得合理的收益和报酬还不现实,中国还不具备产生专职技术作家的土壤,原因是多方面的,大家都明白。

7,为什么国外有那么多高手愿意写书呢?原因有多种。一、国外有良好的知识产权保护制度,技术高手可以通过写书来获得不低于当一个资深工程师的收入。二、国外的技术积累实在太雄厚,有些东西在中国可能是技术秘密,但是对于国外作家而言,算不上是技术秘密,因此可以写成书公开。三、对某些作家而言,他公布自己的经验越多,对自己越有利。比如Bjarne Stroustrup,很显然,对他来说,全世界使用C++的程序员越多,他的地位就越不可动摇。所以,Bjarne Stroustrup完全可以把自己关于C++的一切技术思考和经验毫无保留地告诉给全世界的C++程序员。微软和SUN免费公布自己的技术规范也是同样道理。所以在国外,作者,读者,出版商共同构成了一个良性循环的知识生态系统。毫无疑问,这样的结果必定是多赢。但是,请牢记,真正有商业价值的技术你绝对不可能通过买书学习来获得,比如,你绝对不可能在市面上买到Adobe公司关于字体引擎的算法讲解书籍。要是你恰恰需要这些技术怎么办?回答是:购买!买不起或者买不到就只有脱下外套挽起袖子自己来搞了。没有技术的封锁就没有技术的进步,这又是一个需要用辩证法来解释的问题。

8,我相信,只有通过精读C++创始人撰写的这本书,你才可以最准确地理解和把握C++区别于其他语言的精髓。Bjarne Stroustrup不仅仅介绍了C++的语法,更重要的是全面阐释了C++各种基本设施的设计动机以及在应用过程中应当注意避免那些问题。这本书不仅仅告诉你How,更重要的是他会告诉你Why!况且,世界上没有哪个人能比Bjarne Stroustrup更加了解C++!世界上也没有哪个人能比Bjarne Stroustrup把C++阐释得更加清楚!这就是我为什么强烈推荐此书的最根本理由!我觉得学习C++的过程中最好时刻审问自己:C++中的某些规范为什么要这么制定?比如:为什么要搞运算符重载?为什么要保留广受诟病的多重继承机制?等等。思考这些问题就是在揣摩C++标准委员会的设计意图,而这些设计意图实际上深刻地反映了工业界所面临的各种现实问题。

9,是否懂得C语言并不是学习C++的前提。不仅仅是因为C++本身兼容C语言,更重要的是C++所倡导的程序设计观念是和C语言完全不同的。C语言在某种意义上是对CPU模型的抽象。尽管C++完全保留了C语言的机器模型,但是C++更加注重对现实世界进行抽象。为此,C++创始人Bjarne Stroustrup专门写过一篇著名的文章:《Learning Standard C++ as a New Language》(把标准C++作为一种全新的语言来学习)

热心网友 时间:2023-07-01 04:06

先学习谭浩强的C语言方面的书吧,那本书还是比较适合刚刚入门的,把C学的差不多了在学习谭浩强的那本C++的书,关于《C++ Primer》这本书呢,还是比较注重技巧型的多一些,是建立在你学会了C++基础了以后的一种提升好一点,学会了C++也只是一种基础的理论知识,后面还要学习用VC和MFC,这些都是要慢慢的学的,你把C++的理论学完后就可以去买些VC++的书,里面有关于MFC方面的知识的,可以让你的C++水平得到提升的。。。其实C++有很多方向可以发展的,就关于网络方面的WINSOCKET就很好,呵呵。。也可以专注于应用软件和界面的开发也不错的,只不过我感觉用C++ BULIDER开发界面更好一点,因为他的第三方控件很多,还可以更换皮肤风格,就看你以后的发展方向了,C++的发展空间很大的。

热心网友 时间:2023-07-01 04:07

我们学校就是直接学的C++
C++语言的作者Bjarne Stroustrup发明C++时并没有学习C语言,也就是他发明的是类。。。用C语言做的基础
直接学c++吧 因为C++虽然继承了C但是有很多C的东西已经不怎么用了
先学C 学完C++还得板C留下来的一些习惯
耽误了时间 所以建议你直接学C++ 看初级的语言书就能把C部分学好,建议学清华大学出版社的《C++语言程序设计》,先不去看那些国际上的书 太深 等你学多点再看。。。

热心网友 时间:2023-07-01 04:07

学C,C++是比C要好,可C++要是想用好可就不太容易,除非你有很好的底子和很丰富的经验,不让是无法用好C++.建议:先学C在学Java.然后在试着用C++.
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
逆水寒手游庄园怎么邀请好友同住 逆水寒手游 逆水寒不同区可以一起组队吗? 逆水寒手游 逆水寒怎么进入好友世界? 逆水寒手游 逆水寒怎么去别人的庄园? 使用puppeteer实现将htmll转成pdf 内卷时代下的前端技术-使用JavaScript在浏览器中生成PDF文档 【译】将HTML转为PDF的几种实现方案 变形金刚08动画怎么样 变形金刚08动画的问题 变形金刚08动画日语版剧情介绍 请问是学习C语言还是学习C++语言? 我想自学C语言 请问学C 还是学C++ 先学c语言还是先学C++ 先学c语言好还是c++好 学编程基础还是学C语言还是C++ C语言和c#先学哪个好? 学习c语言和c++,应该先学哪个?两者是什么样的关系 先学c语言还是c十十好 编程入门学C语言好还是学c++好 学C语言好还是学C++好? 编程入门学C语言好还是C++好 苏州最大的冷冻食品批发市场在哪 vivoNEX 充电突然变慢了? 为什么ViVONEX允不进电? vivonex睡醒后无法开机充电也没有反应啊 vivoNEX手机为什么充不进去电? 古代择偶标准 茯苓,生黄芪,陈皮一起泡水喝有什么好处 大子参,黄芪,枸杞子,陈皮合在一起泡水喝有什么作用? 黄芪陈皮玫瑰花泡茶多久喝一次 学编程先学c++还是先学c语言? 初学者学习C语言还是先学习C++??? 我是先学C++好还是C语言好 南京化工大学专业有哪些 北京化工大学专业排名 北京化工大学王牌专业 北京化工大学哪些专业比较好 北京化工大学哪个专业好 北京化工大学有哪些王牌专业? 北京化工大学什么专业最好? 北京化工大学比较好的专业有哪些 北京化工大学优势专业排名及最好的专业有哪些 北京化工大学特色专业 请问北京化工大学哪个专业最好? 沈阳化工大学专业排名 北京化工大学总共有什么专业 北京化工大学的什么专业最好? 沈阳化工大学有哪些专业 北京化工大学有专科吗 沈阳化工大学哪个专业好