39 KiB
C语言与C++学习
致力于搭建一个最好的 C/C++ 学习平台。
很多人不知道是否应该入坑 C/C++
很多人不知道如何准备 C/C++ 面试
很多人不知道如何入门 C/C++
很多人不知道如何进阶 C/C++
一个关于编程学习、互联网求职经验、相互督促共同进步的圈子,无论你是计算机科班还是生化环材,都能够在这里找到你的同道中人。一个让你少走弯路的圈子,欢迎想共同进步的同学。
知识星球的好处就是可以将内容更好的沉淀,将定期更新球友感兴趣或者计算机编程方向典型的问题或者学习资料。
在这个星球中,你将可以获得:
- 免费获得海量编程学习资料,包含不同技术岗位的相关学习路线以及编程指南,如C/C++后台开发、Java后台开发等;
- 持续更新各种深入浅出的原创技术专栏以及原创文章,为你剖析计算机底层的奥秘;
- 这里有来自字节跳动、阿里巴巴、蚂蚁金服等大厂的大佬,将不定期分享在大厂工作的经验和技巧,帮助大家快速形成职场进阶思维;
- 直接和BAT大佬们 1 对 1 交流的机会,帮你解决项目实践、面试经验、技术规划以及职场发展上的疑惑;
- 找到志同道合的学习伙伴,与小伙伴一起学习打卡,互相监督,共同进步;
- 还会不定期发布许多福利,比如现金抽奖、送书,线下聚会等等,让大家能够广结人脉。
强烈推荐开源刷题库,可以注册一个,现在免费,后面可能要收费。
注:这里只是注册的入口,可以刷算法、C/C++、Java、硬件、前段等,当然还有大厂面经,面试真题,推荐大家注册,以后多刷刷题。修炼好内功!
如果大家觉得不错,求给个star!
--
全部电子书:
知名大学计算机系开源课程收录:
强烈推荐开源刷题库,可以注册一个,现在免费,后面可能要收费。
注:这里只是注册的入口,可以刷算法、C/C++、Java、硬件、前段等,当然还有大厂面经,面试真题,推荐大家注册,以后多刷刷题。修炼好内功!
C语言
C 语言可以零基础入门,它的语法是很多高级编程语言的基础,比如说 Java、C++;并且起到承上启下的作用,向上可以学习高级编程语言,向下可以学习计算机组成原理、操作系统等等偏基础的计算机基础知识。
C语言相关电子书:
推荐书籍:
-
第一本书《阿哈C语言》的写书风格个人认为比较风趣幽默,对于培养兴趣,基础学习还是很不错的
-
《C程序设计语言》,机械工业出版社,作者Brian W. Kernighan / (美)Dennis M. Ritchie。C 语言之父写的,入门经典书籍。
-
《C Primer Plus》 ,人民邮电出版社,作者 Stephen Prata。 可以作为 C 语言工具书,也可以作为入门,内容循序渐进,能够锻炼编程思想。
-
《C和指针》 深入了解指针,看完以后对指针不再害怕。
-
《C陷阱与缺陷》 正如书上所说,“本书所揭示的知识,至少能够帮助你减少 C 代码和初级 C++ 代码中 90% 的 Bug”,看完后可以避免 C 语言开发的一些坑。
需要下载下面电子书的话,直接点击书名,输入提取码!
- 征服C指针 提取码:wwcd
- 经典C程序100例 提取码:t8oe
- C专家编程 提取码:uso7
- C语言指针经验总结 提取码:ibjw
- C语言深度解剖 提取码:6qho
- C语言深度解剖 解开程序员面试笔试的秘密 提取码:ffh1
- c语言入门经典(第5版) 提取码:lzro
- C语言解析教程 提取码:mfgv
- C语言函数大全 提取码:ir2d
- C语言的科学和艺术 提取码:zm88
- C语言答疑解惑与典型题解 提取码:8cw5
- C语言从入门到精通 第2版明日科技 提取码:4s8h
- C语言程序设计_现代方法 提取码:t4vn
- C语言常见问题集(问题提高版) 提取码:xto5
- C语言参悟之旅 提取码:5h1t
- C语言参考手册第五版 提取码:t3g1
- C语言编程精粹 提取码:5oai
- C陷阱与缺陷 提取码:nejz
- C和指针(中文版) 提取码:1gvd
- C程序设计语言(英文第2版)及其课后题答案 提取码:wzky
- C程序设计语言(第2版 新版)及课后答案 提取码:rowl
- C 程序设计语言(第2版) 提取码:4s98
- C Primer Plus 中英版 提取码:um90
- C Primer Plus 第6版 中文版 提取码:n30r
- 21天学通C语言 第7版 提取码:8fuj
- [学通C语言的24堂课].刘彬彬&孙秀梅 提取码:f44n
- [C语言必须知道的300个问题].明日科技.扫描版 提取码:bn80
C语言文章干货:
- C语言最全入门笔记
- C语言书籍、软件、60个源码
- 一文带你学C/C++,详细知识点思维导图!
- 10W+ 字C语言从入门到精通保姆级教程(2021版上)
- 10W+字C语言从入门到精通保姆级教程(2021版下)
- 熬夜整理的C/C++万字知识总结(一)
- 熬夜整理的C/C++万字知识总结(二)
- 熬夜整理的C/C++万字知识总结(三)
- 熬夜整理的C/C++万字知识总结(四)
- 熬夜整理的C/C++万字知识总结(五)
- 聊聊我是如何编程入门的
- C语言中三块难啃的硬骨头
- C语言/C++基本语句编程风格
- C语言C++中assert的用法
- 字符串操作的全面总结
- C/C++ 位操作详解
- C/C++基础之sizeof使用
- C语言常用标准库解读
- C/C++ 头文件 “ 细节 ”
- 详细剖析 extern "C"
- 头文件防卫式声明
- 长文详解:C语言预处理命令
- C语言最常用的贪心算法就这么被攻克了
- 干货|手把手教你写单片机的C语言结构体
- 常见的C语言内存错误及对策
- C语言实现面向对象的原理
- 一步步分析-C语言如何面向对象编程
- C语言字符串详解
- 干货 | 深度剖析C语言的main函数
- C语言头文件组织与包含原则
- C 语言怎么可能被淘汰呢?
- 数组越界及其避免方法,C语言数组越界详解
- 看完这篇你还能不懂C语言/C++内存管理?
- C语言/C++ 堆栈工作机制
- 关于堆栈的讲解(我见过的最经典的)
- C/C++ 基础栈溢出及保护机制
- C语言指针详解
- 再谈指针:大佬给你拨开 C 指针的云雾
- C语言函数指针之回调函数
- C语言高效编程与代码优化
- C语言之结构体就这样被攻克了!值得收藏!
- 原码, 反码, 补码 详解
- 浮点数的秘密
- 浮点数比较的精度问题
- 简述C语言宏定义的使用
- 一些值得被定义为常用C语言头文件库的漂亮宏定义(值得收藏,以备使用参考)
- c语言之共用体union、枚举、大小端模式
- C语言文件操作
- C语言常用的一些转换工具函数!
- 几种特殊的函数宏封装方式
- C/C++程序员的编程修养
- 编写可移植 C/C++ 程序的一些要点
- C语言干货分享|更高层次编写嵌入式C代码
- C语言编程规范 clean code
- C语言代码优化方案(深度好文)
- C语言执行效率如何保证,看这一文就够了!
- 关于可重入函数
- 听说有人不了解柔性数组
- 一文读懂C语言与C++动态内存
- OOP 面向对象编程:由 C语言到 C++
- C语言与C++常见面试题
- 难得啊,C语言/C++基础面试知识大集合
- 面试中常见的C语言与C++区别的问题
- C/C++ 八股文
- 熬夜整理,五万字长文总结 C/C++ 知识点
- 面试大全 | C语言高级部分总结
- 两万字带你狙击嵌入式笔试面试题
- 面试:C/C++常见库函数实现
- 学生成绩管理系统案例
- 二叉树操作详解
- 字符串之正则表达式
- 熬夜总结14个秒杀算法题的套路!
- 深拷贝与浅拷贝到底是什么
- 十大经典排序算法(动态演示+代码)
- C 语言实现一个简单的 web 服务器
- 400 行 C 代码实现一个虚拟机
- C/C++ 套接字通信类的封装
- C/C++ 服务器并发
- 手写线程池 - C语言版
- C语言线程库的使用
- C/C++动态检测内存错误利器 - ASan
- C/C++ 关于 cJson 库的使用
视频推荐:
C语言相关小项目及源码
- 60个好玩的C语言程序,训练编程思维,培养解决问题的思路,领略多姿多彩的C语言
- The Algorithms - C
- C语言PAT练习
- Learn-Algorithms
- C语言单元测试框架
- CJson:json解码器,C文件只有500行
- EasyLogger-一款轻量级高性能的日志库
- 小型Lisp解释器,不超过1000行代码
- PAT实验辅助平台
- cwebsocket:一款轻量级websocket库
- C语言:斗地主的发牌器
- C 语言实现通讯录
- C 语言实现 2048 游戏
- Tinyhttpd,一个不到 500 行的超轻量型 HTTP Server,可以用来理解服务器程序的原理和本质
- db_tutorial,用 C 从零创建一个简单的数据库
- 分享10个适合初学者学习的C开源项目代码
C++
C语言->C with class -> C++;
由C++的演变可以看出来,C++ 刚开始就是带类的 C 语言,C 语言和 C++ 的关系到底是什么呢?
看过侯捷老师的视频或者《Effective C++》这本书就知道,现如今我们提到 C++,都应该视其为一个庞大的「语言联邦」,最起码包含如下几个重要的组成部分:
- 面向过程编程
- 面向对象编程
- 泛型编程
- 元编程
- 函数式编程
- STL标准库
其中「面向过程编程」,正是 C++ 提供的向后兼容 C语言的部分。
C++演化(C++ 98 ->C++ 03 -> C++ 11 -> C++ 14 -> C++20 -> ..... )
C++ 相关书籍
书籍推荐:
-
《C++ Primer中文版》本书面向 C++ 语言的初学者,是一本很友好的自学教材。作者把 C 语言的基础概念和需要注意的编程细节说得很清楚,并且例程和习题丰富,相信认真读过之后,可以完成 C 语言入门这个目标。
-
《高质量程序设计指南》,墙裂推荐,这本书看得比较过瘾,书里面有一些编程规范的东西,对于写程序的人来说,还是不错的,可以培养好的编码习惯,加深了一些知识的巩固。比较实用,也适合面试前看看。
-
《Essential C++中文版》是一本内容不多但很实用的 C++ 入门书籍,强调快速上手与理解 C++ 编程。本书主要围绕一系列逐渐复杂的程序问题,以及用以解决这些问题的语言特性展开讲解。你不只学到 C++ 的函数和结构,也会学习到它们的设计目的和基本原理。
-
《More Effective C++(中文版)》,该书围绕55条准则,每一条都介绍了一个可让你写出更好的C++程序代码的方法,并以特别设计过的例子详加讨论。
-
《提高C++性能的编程技术》,本书认为 20% 的性能缺陷将会占用我们 80% 的时间。因此我们把精力集中在最有价值的地方。本书详细讨论了临时对象、内存管理、继承、虚函数、内联、引用计数以及 STL 等一切有可能提升 C++ 效率的细节内容。无论你是相关领域的从业人员,还是 C++ 程序设计爱好者,或者是渴望突破编程瓶颈、大幅提升自我修为的程序设计爱好者,本书都必将使你获益良多。
-
《从缺陷中学习C/C++》从本质上来说,这就是一个 C/C++ 的错题集。全书中包括 63 个问题引发的错误,即书名中的缺陷。也是避坑指南。
-
《C++ Templates中文版》,深入了解现代 c++ 模板的实用书籍。本书不仅是对 C++ 模板的权威解释,而且本书还深入地介绍了其他一般的 C++ 思想。
-
《STL源码剖析》详细地了解 STL 的底层实现机制,同时也可以对常用数据结构,C++ 内存管理拥有更深的理解。
-
还有《C++标准库(第2版)》、《C++并发编程实战》、《C++编程思想(两卷合订本)》等,介绍的这些书我都买了,不过说实话,后面的几本都是泛泛的看了下,当作工具书。
其他文档:
C++ 相关电子书和资料:
需要下载下面电子书的话,直接点击书名,输入提取码!
- 第二套、侯捷老师全系列八部曲 - 手把手教你进阶系列 提取码:rb16
- 00 - 侯捷系列-全部课件 提取码:poo3
- 01、C++面向对象高级编程(上) 提取码:51rd
- 01、C++面向对象高级编程(下) 提取码:0869
- 00 - 侯捷系列-全部课件 提取码:poo3
- 03 - 侯捷-C++设计模式 提取码:zn8n
- 04 - 侯捷-C++新标准C++11&14 提取码:5jl1
- 05 - 侯捷-C++内存管理机制_60_侯捷 提取码:b8b3
- 06 - 侯捷-C++ Startup 揭密:C++ 程序的生前和死后 提取码:adro
- 07、算法原理与实践(选修) 提取码:7548
- 08、系统设计与实践(选修) 提取码:697b
- 第三套、Linux CC++网络编程实践-陈硕 提取码:wv79
- 陈硕 - C++实践工程学 提取码:blou
- 易学C++ 提取码:yiwo
- 提高C++性能的编程技术.左飞 提取码:anft
- 深入理解C++11 提取码:py26
- 深度探索C++对象模型 提取码:0v2p
- 侯捷STL课件 提取码:fuuh
- 跟我一起写makefile 提取码:k090
- 大话设计模式C++ 提取码:r1wi
- 陈硕 - C++实践工程学 提取码:dgy4
- STL源码剖析+源码 提取码:nkcl
- Modern C++ Design 提取码:t1kk
- Effective-C++-第二版 提取码:vy1b
- Effective STL中文版 提取码:t3gy
- Effective C++ 第三版 高清PDF 提取码:bd36
- C++设计新思维-泛型编程与设计之应用 提取码:7gew
- C++工程实践经验课 提取码:o5v4
- C++对象模型 提取码:azv9
- C++大学教程 提取码:012g
- C++程序设计语言 提取码:abu1
- C++沉思录中文第2版 提取码:o88v
- C++并发编程实战 提取码:fuj8
- C++标准程序库 提取码:318m
- C++编程调试秘笈 提取码:8ool
- C++编程思想(两卷合订本) 提取码:ekkz
- C++编程规范-101条规则准则与最佳实践 提取码:0o6k
- C++Primer 5th 英文版 提取码:cxmu
- C++ Primer习题集 提取码:lvmx
- C++ Primer-第4版 提取码:8gyu
- C++ Primer(第5版)_带书签_高清完整版 提取码:x6rl
- C++ Primer Plus 提取码:i0p7
C++ 干货文章
- 一文让你学完C++,干货收藏!!!
- 2022最稳C/C++学习路线
- 呐,这不就是你要的C++后台开发学习路线吗?
- 这才是你需要的C语言、C++学习路线!
- 校招| C++ 后台开发学习路线
- STL总结与常见面试题+资料
- 一定用得到的免费C++资源集合,值得收藏
- 两万字总结《C++ Primer》要点
- 深度探索C++对象模型笔记
- Effective C++学习笔记
- C/C++框架和第三方库汇总
- 万字长文系统梳理C++函数指针
- 学过 C++ 的你,不得不知的这 10 条细节!
- 值得收藏的几个 C/C++ 学习网站
- 假如C++是一只箭,你会用它来射哪只雕?| 就业岗位分享
- 如何优雅地利用C++编程从1乘到20?
- C/C++ 中的 #pragma once 作用是什么?
- C++ Best Practices (C++最佳实践)翻译与阅读笔记
- 防御性编程技巧
- 五万字读懂c++
- 看完这 7 条,模拟 C++ 新功能只是一个小目标!
- 硬核 | C++ 基础大全
- C++模板总结
- C++ 读取 UTF-8 及 GBK 系列的文本方法及原理
- C++ 日期和时间编程
- C++ 编程习惯与编程要点
- C++ 内存模型
- 编程5分钟,命名2小时!聊聊命名规则!
- C++ 与正则表达式
- 手写线程池 - C++版
- C++ 线程的使用
- C++ 八股文(一)
- C++ 使用 chrono 库处理日期和时间
- 硬核 | 50 家企业 C++ 面经分享
- C++编译期多态与运行期多态
- C++ 并发编程(C++11 到 C++17 )
- C++内存管理(建议收藏)
- 两万字长文,见过最好的模板元编程文章!
- C++虚函数表原理浅析
- C++函数调用过程深入分析
- 动图演示:如何彻底理解红黑树?
- C++性能优化
- 万字长文|深入 C++ 内存管理
- 一个程序员的C++学习之路
- C++异常机制概述
- 这些课堂上不教的 C++ 的基本特性你都知道吗?
- C++ 如何避免内存泄露?
- C++11 中的左值、右值和将亡值
- C/C++函数指针与指针函数
- delete 和 delete [] 的真正区别
- C++ 学习笔记
- 一起探索C++类内存分布
- 【最佳实践】C++陷阱与套路
- 泛型Lambda,如此强大!
- 架构思维:如何让写程序像搭积木一样轻松?
- 打工人万字讲清软件性能优化
- C++按值返回对象那些事
- 哪个程序经得起这样的优化?
- C++ 的门门道道
- 线程安全代码到底是怎么编写的?
- 内存管理:程序是如何被优雅的装载到内存中
- 简单!代码原来是这样被CPU跑起来的
- 600 条最强 Linux 命令总结
- C++对象的底层原理都在这儿了,还敢说学不会?
- C++是如何从代码到游戏的?
- if-else和switch-case哪个效率更高?看这四张图。
- 谈谈 C++ 单例模式
- 亲身体验!后端工程师学习路径、书籍、视频推荐
- C++常见的三种内存破坏的场景和分析
- 你踩过几种C++内存泄露的坑?
- 内存池设计与实现
- 打开线程 | 进程 | 协程的大门
- 深度好文|面试官:进程和线程,我只问这19个问题
- 效能优化实践 | C/C++单元测试万能插桩工具
- 手写线程池 - C++版
- C++ 线程的使用
- C++学到什么程度可以面试工作?
- C++ 内存管理(一)
- std 源码剖析及 C++ 内存管理(二)
- C++代码简化之道
- 揭开高性能服务器底层面纱
- windows程序崩溃调试终极武器
- 长文预警!C语言与C++常见问答题
- 提升 C++ 开发效率的几个小技巧
- 书单:拓展对C++的认知层次
- 和各种诡异 Bug 打交道 13 年,我总结了 18 个经验
- 去银行写代码是什么样的体验
- 谈谈C++新标准带来的属性(Attribute)
- 百度C++工程师的那些极限优化(并发篇)
- 百度C++工程师的那些极限优化(内存篇)
- 图解|从武侠角度探究STL排序算法的奥秘
- C++中是如何调用C接口的?
- C++编码优化之减少冗余拷贝或赋值
- 计算机为什么要用补码?
- 生成随机数的方式你选对了吗?
- 总结了24个C++的大坑,看你能躲过几个?
- 这些知识点你都知道吗,测试你的C++入门程度
- 超硬核 | 2 万字+20 图带你手撕 STL 序列式容器源码
- 浅析C++智能指针和enable_shared_from_this 机制
- 经典永不过时!重温设计模式
- 全网首发!!C++20新特性全在这一张图里了
- C++的最后一道坎|百万年薪的程序员
- C++模版的本质
- 10 个内存引发的大坑,你能躲开几个?
- C++内存管理全景指南
- 9个提高代码运行效率的小技巧你知道几个?
- 精选 30 个 C++ 面试题(含解析)
- 腾讯 C++ 笔试/面试题及答案
- C++ 万字长文第一篇---拿下字节面试
- 《逆袭进大厂》之C++篇49问49答(绝对的干货)
- 《逆袭进大厂》第二弹之C++进阶篇59问59答(超硬核干货)
- 《逆袭进大厂》之C++提高篇79问79答
- 自己动手实现一个malloc内存分配器 | 30图
- 现代C++之手写智能指针
- 10张图22段代码,万字长文带你搞懂虚拟内存模型和malloc内部原理
- 面试系列之C++的对象布局【建议收藏】
- c++代码整洁之道
- 源码分析C++的string的实现
- 23种设计模式的通俗解释,看完秒懂
- 一位大佬对于 Qt 学习的最全总结(三万字干货)
- 3万字Linux总结
- 加密与解密
- TCP数据粘包的处理
C++视频推荐:
C++ 开源推荐:
- FreeNOS:深入理解C++,以及操作系统原理。FreeNOS(Free Niek的操作系统)是一个基于C++的基于微内核的学习操作系统。这是一个用C++实现的微内核的操作系统,各种宏内核中的服务作为一个独立的services在微内核中,基于消息的通信方式,这点其实跟mac内核中的mach那部分机制相似。
- Boost:Boost 库是一个经过千锤百炼、可移植、提供源代码的C++ 库,作为标准库的后备,是C++ 标准化进程的发动机之一。 Boost 库由C++标准委员会库工作组成员发起,在C++ 社区中影响甚大,其成员已近2000 人。 Boost 库为我们带来了最新、最酷、最实用的技术,是不折不扣的“ 准” 标准库。
- muduo:一个基于 Reactor 模式的现代 C++ 网络库,它采用非阻塞 IO 模型,基于事件驱动和回调,支持多核多线程,适合编写 Linux 服务端多线程网络应用程序。
- libevent:一个是轻量级的网络库.
- log4cpp:日志库, 支持多线程, 日志重定向到网络等都有, 反正你能想到的日志的功能, 都有。
- OpenSSL:OpenSSL 包含一个命令行工具用来完成OpenSSL 库中的所有功能,更好的是,它可能已经安装到你的系统中了。
- wfrest:简单高效的c++11异步restful网络框架。
- workflow:当前最火最简洁好用的c++异步网络库workflow。
- modern-cpp-tutorial:modern-cpp-tutorial 是现代 C++ 教程,它的目的是提供关于现代 C++(2020 年前)的相关特性的全面介绍。
- MyTinySTL:用 C++11 重新复写了一个小型 STL(容器库+算法库)。代码结构清晰规范、包含中文文档与注释,并且自带一个简单的测试框架,适合 C++ 新手来实践一番。
- Tinytetris:Tinytetris 是一个用 C++ 编写的终端版俄罗斯方块游戏。它提供了两个版本的源码,分为注释版和库版,注释较多易于理解和学习。
- calculator:
操作系统
计算机网络
数据库
马不停蹄的更新中。。。。。