考试结束了,C语言工程实践 需要我们做一个简单的工程 有什么建议呢?

刚做了。

cmake实践 cmake实践epubcmake实践 cmake实践epub


cmake实践 cmake实践epub


cmake实践 cmake实践epub


cmake实践 cmake实践epub


很重要的个人经历和建议是,楼主千万千万不要去抄袭,老实自己做是很好的。一方面,如果时间来得及的话,可以考虑找一个稍微有点难度的工程去做。当然这需要很多的时间,而且要大量的调试。调试是占用了绝大部分的时间。

另个人觉得,如果相同的难度下,楼主可以考虑选一个好一点的工程去做。我的意思是比较贴进实际的东西。(仅是个人意见。)比如做一个不限位数整数的计算与做一个航空路线的策划,(仅是举例,设它们难度一样。实际上不代表这两个的难度一样),那么个人觉得第二个可能会更好一点,因为是更贴进现实,个当然也是一个煅练的机会,但是现在去考虑这样的问题其实意义并不算很大,计算这种事现在实现已经不是很大问题了。(一般已经都有人实现了)只是实际性的问题可能会更煅练我们用程度的思想去考虑现实问题要怎么处理,毕竟本来学什么东西都是为了现实的情况处理而准备的。

以上仅是个人意见。如果老师有规定楼主做什么,就按老师的做中吧,如果没有,可以百度一下,有需要的话也可以找我要一些吧。不过有部分可能不太适合。如果你学过数据结构可能会好做一点,没学过也还是可以的啦。加油!自己完成真的会有不一样的经历的感觉。

目前大一,在学C++,编程能力如何快速提高?

1、学好 C 语言。建议你一定要学好 C 语言,它应该作为你必须掌握好的语言。你要熟悉 C 语言的基本语法,包括:

顺序、条件、循环三大控制语句

C 中几大基元数据类型的用法

熟悉掌握数组的用法

熟练掌握指针的用法

熟练掌握结构体、枚举、联合等数据类型的用法

熟练使用常用 C 库函数,如控制台输入输出流、字符串作、文件作、时间函数等等

2、熟悉 C/C++ 语言相关的开发工具链

无论你的理论知识学的多么麻溜,连代码写在什么地方、如何编译、如何调试和运行都不知道,一切都是水中月镜中花。所以掌握 C/C++ 语言相关的开发工具链你才能不断练习,提高动手能力,我们学习开发终是为了付诸实践的。

熟悉 C/C++ 语言的相关的 IDE 开发环境,Windows上我 Visual Studio,Mac 上可以使用Subline 或者VSCode,如果你终的程序需要在 Linux 跑,你需要熟悉 cmake/make/gcc/g++/gdb 工具链,vim 的基本作也要熟悉,但不要直接在 vim 中写代码,纯属浪费时间,实际企业级开发也没人会这么做。这里强调一下,如果可能,至少要熟悉 Visual Studio 和 gdb 调试。

3、编程语言方面

学好 C++ 本身,学习的阶段,请抛弃各种总结经验技巧的面经,逐个掌握 C++ 语言的各个语法,包括但不局限于:

指针和引用的概念

指针与内存关系

程序编译过程,静态链接库和动态链接库

static、const、#define的用法和区别

C和C++区别

内存中的栈和堆分配

面向对象理解

访问限定符 public/protected/private

构造函数/析构函数/拷贝构造

多态

虚函数与纯虚函数、虚函数实现机制、虚函数表

继承原理、虚继承、菱形继承

new/delete和malloc/free

重载、重写和覆盖

类型转换方式

RAII 与 pimpl 惯用法

内存溢出和内存泄漏

STL标准模板库

迭代器、空间配置器理解

常用容器特点、用法以及底层实现vector、list、deque、set、map、unorderedmap

C++11/14/17 新标准也慢慢成为主流,这块也要熟悉,要熟悉新标准常用的语法与新功能,包括:另外,时至今日,你一定要熟悉 C++11/14/17 常用的语言特性和类库,这里简单地列一下:

左值/右值/std::move/std::forward

统一的类成员初始化语法与 std::initializer_list

注解标签(attributes)

final/override/=default/=delete 语法

auto 关键字

Range-based 循环语法

结构化绑定

stl 容器新增的实用方法

std::thread

线程局部存储 thread_local

线程同步原语 std::mutex、std::condition_variable 等

原子作类

智能指针类

std::bind/std::function

C++11/14 网上的资料已经很多了,C++17 的资料不多,重点掌握的还是 C++11 引入的各种实用特性,这就给读者一些我读过的书:

《深入理解 C++11:C++11 新特性解析与应用》

《深入应用 C++11:代码优化与工程级应用》

《C++17 完全指南》

《Cpp 17 in Detail》

4、学好算法和数据结构

如果你想毕业后进大厂,从这时开始学习算法和数据结构。

一定要找一两本经典书籍系统地学习下常见的算法理论、思想和常用的数据结构知识。等熟悉了这块的知识,再适当地刷一些算法题目或者做一些算法练习。

学习算法和数据一定不能急功近利,算法和数据结构的知识一定要作为一个长期的学习目标。

5、注重代码规范与风格优化

在你学习的过程中,请一定要认真对待自己每一个变量名、函数名,养成良好的代码习惯。我学生时代花了大量时间去学习一些教人写出优美风格的代码书籍、资料、源码,在你还是个小白的时候,要认真精读一些代码,不仅要学习它们的整体设计思路,还要学习它们的代码风格和细节。这里《程序设计实践》《代码整洁之道》这两本书,特别是《程序设计实践》,强烈建议学生朋友看一下,能大幅度地提高你实际编码的技巧和编码风格。

个人建议,如果有经济能力的情况下,可以报一个线上的培训班,这样能够更加系统的学习,并且也不用自己去花费时间整理资料;如果经济条件不允许就可以在 Billy Billy等一些软件上根据一些大神去学习他们的经验和方法。

想要快速,提高编程能力肯定要从基础的代码英语开始学习,并且反复练习多做题,及时分析自己的错误,才能够有所提高。

首先自己要多去参加一些比赛,然后多去编写一些软件,这样自己的能力才能快速提升。