大一新生,学习C和C++有段时间了,求大神们指导。

水无垠ZZU 2019-03-18 11:58:53
虽然基础感觉懂了,但总感觉是基础,一遇到深入的就不会了,有时候也感觉自己学的东西到底有用没有,因为现在不都是好多照搬代码,或者会不会毕业了学的都没什么用了,求大神们给点建议,不胜感激。
...全文
290 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
丁劲犇 2019-05-10
  • 打赏
  • 举报
回复
引用 9 楼 水无垠 的回复:
[quote=引用 7 楼 丁劲犇的回复:]粘贴回帖。

...机、计算机周边的理解是立体的、全面的、宏观的。如果再结合具体行业,是如虎添翼。

谢谢哥,感觉很有用,牛神啊[/quote]

过奖了,只是写了很多年的C/C++/Qt而已。这个东西的学习靠兴趣,当你发现解决了一个问题,看到想要的结果时,兴奋的感觉无可比拟。
CaptainXue 2019-05-10
  • 打赏
  • 举报
回复
个人觉得思路很重要,没有清晰可行的思路,当程序复杂一点,就会出错;
其次,才是语法!关于这点可以看看我的博文:https://blog.csdn.net/weixin_43956598/article/details/90049508
水无垠ZZU 2019-05-09
  • 打赏
  • 举报
回复
引用 7 楼 丁劲犇的回复:
粘贴回帖。

1.c++正式入门后的工作岗位有哪些,就业前景如何?
主要集中在基础行业软件、游戏(渐渐减弱)领域。资深C++写手薪水非常高,但是职位少、难度大。一般小公司培养不起资深C++攻城狮,很多是在国企练了十几年,而后直接跳槽的。C++学习的话,注意学框架、数据库、网络周边知识。把Qt库学通了,再结合linux , win32 , Arm等环境的差异学习,会迅速积累能力。

2.c++从学习到能正式找工作需要多久时间?
没有项目牵引,自己学习是很困难的。可以在你的行业中选取一个点,用C++解决问题。比如建立一个数据库、呈现某个化工流程的工况等等。如果能够供职于大企业,会有更多的机会接触项目。如果停留在自学阶段,没有项目经历,找到好工作很难。现在招C++的很多都是只要资深的,培养不起。

3.仅出于找工作考虑,是否应该放弃c++学习java(或者其他什么)?还是先看完c++ primer plus。
找工作的话,Web前端短平快,但是后面很累。面向终端用户的项目,永远停留在工具链的使用上,变化快、再学习成本高。如果学习Web,也要去大公司。大公司会维护自己的工具链,慢慢再补C++、Python、C,从用工具向写工具转变,从面向最终用户向面向企业转变。

4. java(或其他)从学习到能正式找工作需要多久时间?
最快的是学习Web ,Html5 + JS。如果你是非计算机行业的开发者,建议还是从本行业入手,做你的中心行业。中心行业是缓变的、保值的。像税务、财务、金融、餐饮、物流、安防视频、医疗、保险,每个行业都有复杂的逻辑,搞清楚了后,哪怕是用最老的软件也能吃很多年。

5.学习编程有没有必要考证?如果有,需要考哪些证?
可以适当考,不过现在HR面试很精,没有真经历,几下子就会露馅儿。

6.如果继续学习c++,大致的学习规划是怎样的?
(0)基础知识回顾:计算机原理、数据结构、计算方法、图论、汇编语言(择选)
(1)C++语言本身学习,不怕枯燥,黑屏printf,试着去浙大ACM做题。学号STL库的使用。
(2)C++编译器命令行学习,装个Ubuntu, GNU C++、MakeFile,就反过来知道VC背后的编译过程,中间文件。VC包裹的太深了。
(3)C++特性强化,thread, OpenMP、lambda\闭包、高阶STL算法(排序、查找等)。
(3)中文基础,包括 字符编码(Unicode、UTF-8、ANSI)、代码页转换。
(4)动态链接、静态链接的异同、库的使用与封装发布。C++库与C库的异同,C++调用C库,C++为C发布库。比较不同编译器版本编译出的C库、C++库中的符号名称异同,以理解C++/C二进制兼容性的显著区别。
(5)第三方库的使用。boost,curl等,建议在Linux下学习开源库。目前能想到的功能,一定会有C的开源库。
(5)图形界面编程(GUI),建议直接上Qt
(6)网络编程、数据库编程(关系代数学)、结构化数据处理(JSON、XML),多线程、高级并行计算,Qt通吃
(7)高级图形界面,报表图表、3D图表(Qt通吃)、MVC、Qt插件
(8)高级控制台编程。管道重定向、命令行解析、多进程树管理、fork、后台服务开发,fcgi (Qt)、汇编植入(ASM)。酌情研究底层API、驱动开发。
(9)性能与稳定。智能指针、隐含共享(Qt implicit sharing)、右值引用、线程专有存储、锁
(10)外围框架。消息队列、嵌入式数据库(Sqlite)
(11)调试与测试。gdb、valgrind、单元测试、性能报告分析
(12)文档化,doxygen、开源项目准入基础
(13)版本管理,Git使用、Git服务器搭建
(14)代码功底:使用Notepad++、Excel/WPS/Libreoffice高阶功能,实现批量生成代码。数据库条目的自动清洗插入,使用Excel批量生成SQL脚本。
(15)工具链混合:python\matlab\Octave混合编程、bash、windows命令行编程、apache 模块编程、OLE自动化、COM、JS脚本自动化、QML
(end)不断熟练的最好方法:参与、发布开源项目

学习C++,实际上是对当代计算机体系的全面学习。C++是少有的几个从底层贯穿到末端(Qt可以做工控LED、汽车仪表面板、示波器前端,也可以做Web浏览器、CGI服务器,很多复杂IDE、WPS、手机APP)的工具链,涉及的面非常广。一旦精通,一通百通,对计算机、计算机周边的理解是立体的、全面的、宏观的。如果再结合具体行业,是如虎添翼。
谢谢哥,感觉很有用,牛神啊
xiaohuh421 2019-04-16
  • 打赏
  • 举报
回复
先要学习抄代码, 然后再慢慢理解抄的代码. 然后慢慢的, 你就学会程序员都常用ctrl+c , ctrl+v 了. 达芬奇都是从画鸡蛋开始的, 并不是一开始就凭空创作. 作家也要读很多书, 抄别人的段落词句, 简单总结: 先借鉴,再创作
丁劲犇 2019-04-16
  • 打赏
  • 举报
回复
粘贴回帖。

1.c++正式入门后的工作岗位有哪些,就业前景如何?
主要集中在基础行业软件、游戏(渐渐减弱)领域。资深C++写手薪水非常高,但是职位少、难度大。一般小公司培养不起资深C++攻城狮,很多是在国企练了十几年,而后直接跳槽的。C++学习的话,注意学框架、数据库、网络周边知识。把Qt库学通了,再结合linux , win32 , Arm等环境的差异学习,会迅速积累能力。

2.c++从学习到能正式找工作需要多久时间?
没有项目牵引,自己学习是很困难的。可以在你的行业中选取一个点,用C++解决问题。比如建立一个数据库、呈现某个化工流程的工况等等。如果能够供职于大企业,会有更多的机会接触项目。如果停留在自学阶段,没有项目经历,找到好工作很难。现在招C++的很多都是只要资深的,培养不起。

3.仅出于找工作考虑,是否应该放弃c++学习java(或者其他什么)?还是先看完c++ primer plus。
找工作的话,Web前端短平快,但是后面很累。面向终端用户的项目,永远停留在工具链的使用上,变化快、再学习成本高。如果学习Web,也要去大公司。大公司会维护自己的工具链,慢慢再补C++、Python、C,从用工具向写工具转变,从面向最终用户向面向企业转变。

4. java(或其他)从学习到能正式找工作需要多久时间?
最快的是学习Web ,Html5 + JS。如果你是非计算机行业的开发者,建议还是从本行业入手,做你的中心行业。中心行业是缓变的、保值的。像税务、财务、金融、餐饮、物流、安防视频、医疗、保险,每个行业都有复杂的逻辑,搞清楚了后,哪怕是用最老的软件也能吃很多年。

5.学习编程有没有必要考证?如果有,需要考哪些证?
可以适当考,不过现在HR面试很精,没有真经历,几下子就会露馅儿。

6.如果继续学习c++,大致的学习规划是怎样的?
(0)基础知识回顾:计算机原理、数据结构、计算方法、图论、汇编语言(择选)
(1)C++语言本身学习,不怕枯燥,黑屏printf,试着去浙大ACM做题。学号STL库的使用。
(2)C++编译器命令行学习,装个Ubuntu, GNU C++、MakeFile,就反过来知道VC背后的编译过程,中间文件。VC包裹的太深了。
(3)C++特性强化,thread, OpenMP、lambda\闭包、高阶STL算法(排序、查找等)。
(3)中文基础,包括 字符编码(Unicode、UTF-8、ANSI)、代码页转换。
(4)动态链接、静态链接的异同、库的使用与封装发布。C++库与C库的异同,C++调用C库,C++为C发布库。比较不同编译器版本编译出的C库、C++库中的符号名称异同,以理解C++/C二进制兼容性的显著区别。
(5)第三方库的使用。boost,curl等,建议在Linux下学习开源库。目前能想到的功能,一定会有C的开源库。
(5)图形界面编程(GUI),建议直接上Qt
(6)网络编程、数据库编程(关系代数学)、结构化数据处理(JSON、XML),多线程、高级并行计算,Qt通吃
(7)高级图形界面,报表图表、3D图表(Qt通吃)、MVC、Qt插件
(8)高级控制台编程。管道重定向、命令行解析、多进程树管理、fork、后台服务开发,fcgi (Qt)、汇编植入(ASM)。酌情研究底层API、驱动开发。
(9)性能与稳定。智能指针、隐含共享(Qt implicit sharing)、右值引用、线程专有存储、锁
(10)外围框架。消息队列、嵌入式数据库(Sqlite)
(11)调试与测试。gdb、valgrind、单元测试、性能报告分析
(12)文档化,doxygen、开源项目准入基础
(13)版本管理,Git使用、Git服务器搭建
(14)代码功底:使用Notepad++、Excel/WPS/Libreoffice高阶功能,实现批量生成代码。数据库条目的自动清洗插入,使用Excel批量生成SQL脚本。
(15)工具链混合:python\matlab\Octave混合编程、bash、windows命令行编程、apache 模块编程、OLE自动化、COM、JS脚本自动化、QML
(end)不断熟练的最好方法:参与、发布开源项目

学习C++,实际上是对当代计算机体系的全面学习。C++是少有的几个从底层贯穿到末端(Qt可以做工控LED、汽车仪表面板、示波器前端,也可以做Web浏览器、CGI服务器,很多复杂IDE、WPS、手机APP)的工具链,涉及的面非常广。一旦精通,一通百通,对计算机、计算机周边的理解是立体的、全面的、宏观的。如果再结合具体行业,是如虎添翼。
michael_zing 2019-04-12
  • 打赏
  • 举报
回复
推荐: Computer Systems:A Programmer's Perspective 中文版:深入理解计算机系统
AlbertS 2019-04-11
  • 打赏
  • 举报
回复
熟能生巧,写的多了,遇到问题就有想法了
  • 打赏
  • 举报
回复
肯定有用的,起码找工作的时候人家会要你不会要没学过编程的
Method.Jiao 2019-04-11
  • 打赏
  • 举报
回复
全部照搬代码只是入门者的做法,慢慢磨练代码量,自然就会产生自己的体会,多写多练无它法!
michael_zing 2019-04-10
  • 打赏
  • 举报
回复
Practice makes perfect.
赵4老师 2019-03-19
  • 打赏
  • 举报
回复
功到自然成。

15,440

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 非技术区
社区管理员
  • 非技术区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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