CppGuide
"C/C++ Learning + Interview Guide" covers the knowledge that most C++ programmers need to master. For entry, advanced, in-depth, school recruitment, social recruitment, and preparation for C++ learning & interviews, CppGuide is your first choice!
Table of contents
1. Recommendation of past programming resources
- Probably the best job interview site on the internet
- Here you can find all computer programming learning PDF e-books
- A summary of some programming resources you can definitely use
- Collection of open source courses in computer science departments of well-known universities (Tsinghua University, Peking University, Zhejiang University, Shanghai Jiao Tong University, etc.)
2. C language related
- Probably the best C language learning route
- Books related to C language (with PDF resources attached)
- C language useful articles
- C language video recommendation
- C language open source project recommendations
3. C++ related
- Introductory Tutorial (Alibaba Cloud University)
- Probably the most user-friendly C++ learning route
- C++ related books (with PDF resources included)
- C++ study notes
- C++ useful articles
- C++ video recommendation
- C++ open source recommendation
4. Linux C/C++ school recruitment
5. Linux C/C++ social recruitment
1. Recommendation of past programming resources
1. Probably the best job interview website on the Internet
Some time ago, I discovered a good job interview website, which can screen real interview questions based on designated industries, companies, interview positions, subjects, and inspection times . It also includes the most recent inspection time and cumulative number of inspections .
It’s simply a great artifact ! ! ! For example, I want to check what are the interview questions such as the industry is the Internet, the company is ByteDance, the position is back-end, the subject is not limited, and the inspection time is within the past year?
In addition to the Internet, the industries include state-owned enterprises, banks, foreign companies and other industries. As of the time I found out, it was like this. It seems that the website is gradually adding new data in the later period.
Take the Internet as an example. All major domestic and foreign first- and second-tier companies cover it, such as ByteDance, Alibaba, Tencent, Baidu, Meituan, etc.
I would like to share this website here. Such good things cannot be kept secret. If it is helpful to you, giving it a like is the greatest support! ! Thank you!
Website link : https://top.interviewguide.cn/
2. Here you can find all PDF e-books for computer programming learning
3. A summary of some programming resources that you can definitely use
- Come quickly! A PDF file of the Internet interview summary experience from the boss of Niuke.com!
- Offline version of C language quick reference manual! Share for free!
- A must for development! C++ offline version reference manual! Share for free!
- Produced by Google senior R&D engineers! Supports Leetcode test notes in three languages: Java, C++, and Go~
- "Pro Git Chinese Version" PDF, teaches you the cool operations of git~
- 10 sets of resume templates most suitable for programmers! Word format, available for free~
- Backend is a must! SQL syntax quick guide to share for free! ~
- Illustration of operating system, network and computer components PDF download! The basic computer knowledge that will make you take off~
- Share the mind maps of various hard-core technology learning routes that are popular on Github~
- Come and have sex for free! Real experience from first- and second-tier Internet companies such as Tencent Byte, Ali Meituan, etc.!
- Come quickly! Zhejiang University’s undergraduate computer science course has been open sourced! Comes with offline version resources!
- Big picture! Tsinghua University Department of Computer Science course guide sharing plan! Comes with offline version resources!
- C language source code is shared for free! Super Mario, Snake, student management system, etc.
4. Collection of open source courses from computer departments of well-known universities
- Zhejiang University course guide sharing plan
- Tsinghua University Computer Science Course Guide
- Shanghai Jiao Tong University course material sharing
- Beihang University (Beihang University) coursework data sharing plan
- North China Electric Power University Computer Department Course Guide
- Summary of computer postgraduate entrance examination information of Beijing University of Posts and Telecommunications
2. C language related
Probably the best C language learning route
Probably the best zero-based C language learning route in the northern hemisphere
You can get started with C language from scratch. Its syntax is the basis of many high-level programming languages, such as Java and C++. It also serves as a link between the previous and the following. You can learn high-level programming languages at the top, and learn the principles of computer composition, operating systems, etc. at the bottom. Some basic computer knowledge.
Books related to C language (with PDF resources attached)
Recommended books:
The writing style of the first book "Aha C Language" is quite interesting and humorous in my opinion. It is very good for cultivating interest and basic learning.
"C Programming Language", Machinery Industry Press, author Brian W. Kernighan / (US) Dennis M. Ritchie. Written by the father of C language, a classic introductory book.
"C Primer Plus", People's Posts and Telecommunications Press, author Stephen Prata. It can be used as a C language reference book or as an introduction. The content is step-by-step and can exercise programming thinking.
"C and Pointers" Learn about pointers in depth and no longer be afraid of pointers after reading it.
"C Traps and Defects" As the book says, "The knowledge revealed in this book can at least help you reduce 90% of the bugs in C code and elementary C++ code." After reading this, you can avoid some pitfalls in C language development.
If you need to download the e-book below, just click on the book title and enter the extraction code!
- Conquer C pointer extraction code: wwwcd
- 100 examples of classic C program extraction code: t8oe
- C expert programming extraction code: uso7
- C language pointer experience summary extraction code: ibjw
- C language deep anatomy extraction code: 6qho
- In-depth dissection of C language to unlock the secret of programmer interview written test Extraction code: ffh1
- C language introductory classic (5th edition) Extraction code: lzro
- C language parsing tutorial extraction code: mfgv
- C language function collection extraction code: ir2d
- C language science and art extraction code: zm88
- C language question answering and typical problem solving extraction code: 8cw5
- C language from entry to proficiency 2nd edition Tomorrow Technology Extraction code: 4s8h
- C language programming_modern method extraction code: t4vn
- C language FAQ (improved version) Extraction code: xto5
- C language comprehension journey extraction code: 5h1t
- C Language Reference Manual fifth edition extraction code: t3g1
- C language programming essence extraction code: 5oai
- C trap and defect extraction code:nejz
- C and pointers (Chinese version) Extraction code: 1gvd
- C Programming Language (English 2nd Edition) and its answer extraction code for after-school questions: wzky
- C Programming Language (New 2nd Edition) and after-class answer extraction code: rowl
- C Programming Language (2nd Edition) Extraction code: 4s98
- C Primer Plus Chinese and English version extraction code: um90
- C Primer Plus 6th Edition Chinese version extraction code: n30r
- 21 Tian Xuetong C Language 7th Edition extraction code: 8fuj
- [24 Lessons to Learn C Language]. Liu Binbin & Sun Xiumei Extraction code: f44n
- [300 questions you must know about C language]. Tomorrow Technology. Scanning version extraction code: bn80
C language useful articles
- The most complete introductory notes on C language
- C language books, software, 60 source codes
- This article will help you learn C/C++, with a mind map of detailed knowledge points!
- 10W+ C language nanny-level tutorial from entry to proficiency (2021 version)
- 10W+ words C language from entry to proficiency nanny-level tutorial (2021 version)
- Summary of 10,000 words of C/C++ knowledge compiled after staying up late (1)
- Summary of C/C++ knowledge of 10,000 words compiled after staying up late (2)
- Summary of 10,000 words of C/C++ knowledge compiled after staying up late (3)
- Summary of C/C++ knowledge of 10,000 words compiled after staying up late (4)
- Summary of 10,000 words of C/C++ knowledge compiled after staying up late (5)
- Let’s talk about how I got started with programming
- Three hard bones to crack in C language
- C language/C++ basic statement programming style
- How to use assert in C language C++
- Comprehensive summary of string operations
- Detailed explanation of C/C++ bit operations
- Use of sizeof based on C/C++
- Interpretation of commonly used standard libraries in C language
- C/C++ Header File "Details"
- Detailed analysis of extern "C"
- Header file defensive declarations
- Long article detailed explanation: C language preprocessing commands
- The most commonly used greedy algorithm in C language has been overcome in this way
- Dry information | Teach you step-by-step to write the C language structure of the microcontroller
- Common C language memory errors and countermeasures
- The principle of object-oriented implementation in C language
- Step-by-step analysis-how to object-oriented programming in C language
- Detailed explanation of C language strings
- Dry information | In-depth analysis of the main function of C language
- C language header file organization and inclusion principles
- How could C language be eliminated?
- Array out-of-bounds and how to avoid it, detailed explanation of array out-of-bounds in C language
- After reading this article, you still don’t understand C language/C++ memory management?
- C language/C++ stack working mechanism
- An explanation about the stack (the most classic I have ever seen)
- C/C++ basic stack overflow and protection mechanism
- Detailed explanation of C language pointers
- Let’s talk about pointers again: The boss will clear away the clouds about C pointers for you
- C language function pointer callback function
- Efficient programming and code optimization in C language
- The structure of C language has been conquered in this way! Worth collecting!
- Detailed explanation of original code, inverse code and complement code
- The secret of floating point numbers
- Precision problem of floating point number comparison
- Briefly describe the use of macro definitions in C language
- Some beautiful macro definitions worthy of being defined as commonly used C language header file libraries (worth collecting for reference)
- C language union, enumeration, big and small endian modes
- C language file operation
- Some conversion tool functions commonly used in C language!
- Several special function macro encapsulation methods
- Programming accomplishments for C/C++ programmers
- Some key points for writing portable C/C++ programs
- C language useful information sharing | Writing embedded C code at a higher level
- C language programming specification clean code
- C language code optimization plan (good in-depth article)
- How to ensure the execution efficiency of C language? Just read this article!
- About reentrant functions
- I heard that some people don’t understand flexible arrays
- Understand C language and C++ dynamic memory in one article
- OOP object-oriented programming: from C language to C++
- Common interview questions about C language and C++
- It’s rare, a large collection of C language/C++ basic interview knowledge
- Common questions about the difference between C language and C++ in interviews
- C/C++ eight-part essay
- Stay up late to organize, 50,000 words long article summarizing C/C++ knowledge points
- Interview summary | Summary of advanced parts of C language
- 20,000 words guide you through embedded written test interview questions
- Interview: Implementation of common library functions in C/C++
- Student performance management system case
- Detailed explanation of binary tree operations
- String regular expression
- Stay up late to summarize the routines for 14 instant killing algorithm questions!
- What exactly are deep copy and shallow copy?
- Top ten classic sorting algorithms (dynamic demonstration + code)
- Implement a simple web server in C language
- 400 lines of C code to implement a virtual machine
- C/C++ socket communication class encapsulation
- C/C++ server concurrency
- Handwritten thread pool-C language version
- Use of C language thread library
- C/C++ dynamic detection memory error tool - ASan
- C/C++ About the use of cJson library
C language video recommendation
- "Hao Bin C Language Self-Study Tutorial"
- "Introduction to Programming - C Language (Weng Kai, Zhejiang University)"
Recommended C language open source projects
- 60 fun C language programs to train programming thinking, cultivate problem-solving ideas, and appreciate the colorful C language
- The Algorithms-C
- C language PAT exercises
- Learn-Algorithms
- C language unit testing framework
- CJson: json decoder, C file only has 500 lines
- EasyLogger-a lightweight and high-performance logging library
- Small Lisp interpreter, no more than 1000 lines of code
- PAT experimental assistance platform
- cwebsocket: a lightweight websocket library
- C language: Card dealer of Landlords
- C language to implement address book
- C language to implement 2048 game
- Tinyhttpd, an ultra-lightweight HTTP Server with less than 500 lines, can be used to understand the principles and essence of server programs.
- db_tutorial, create a simple database from scratch in C
- Share 10 C open source project codes suitable for beginners to learn
3. C++ related
Getting Started Tutorial
C++ introductory tutorial Alibaba Cloud University
- C++ tutorial
- Introduction to C++
- C++ environment settings
- C++ basic syntax
- C++ comments
- C++ data types
- C++ variable types
- C++ variable scope
- C++ constants
- C++ modifier types
- C++ storage class
- C++ operators
- C++ loop
- C++ judgment
- C++ function
- C++ numbers
- C++ array
- C++ string
- C++ pointers
- C++ references
- C++ Date & Time
- C++ basic input and output
- C++ data structures
- C++ Classes & Objects
- C++ inheritance
- C++ overloaded operators and overloaded functions
- C++ polymorphism
- C++ data abstraction
- C++ data encapsulation
- C++ interface (abstract class)
- C++ files and streams
- C++ exception handling
- C++ dynamic memory
- C++ namespace
- C++ template
- C++ preprocessor
- C++ signal processing
- C++ multithreading
- C++ Web Programming
- C++ STL Tutorial
- C++ standard library
Probably the most user-friendly C++ learning route
Isn't this the nanny-level C++ learning route you want?
C language ->C with class -> C++; It can be seen from the evolution of C++ that C++ was originally a C language with classes. What is the relationship between C language and C++?
If you have watched Teacher Hou Jie’s video or the book "Effective C++", you will know that when we talk about C++ nowadays, we should regard it as a huge "language federation", which at least contains the following important components:
- process oriented programming
- object-oriented programming
- Generic programming
- metaprogramming
- functional programming
- STL standard library
Among them, "procedural-oriented programming" is the backward-compatible part of the C language provided by C++.
C++ evolution (C++ 98 -> C++ 03 -> C++ 11 -> C++ 14 -> C++20 -> .....)
C++ related books (with PDF resources included)
Book recommendations:
"C++ Primer Chinese Edition" is a very friendly self-study textbook for beginners of C++ language. The author clearly explains the basic concepts of C language and the programming details that need to be paid attention to, and is rich in routines and exercises. I believe that after reading it carefully, you can complete the goal of getting started with C language.
"Guide to High-Quality Programming", recommended by Wall Crack. This book is quite enjoyable to read. It contains some programming standards. It is good for people who write programs. It can cultivate good coding habits and deepen their knowledge. Consolidation of some knowledge. It is more practical and suitable for reading before the interview.
"Essential C++ Chinese Edition" is a small but very practical introductory book on C++, emphasizing quick start and understanding of C++ programming. This book focuses on a series of increasingly complex programming problems and the language features used to solve them. You will not only learn the functions and structures of C++, but also their design purpose and basic principles.
"More Effective C++ (Chinese Edition)", this book focuses on 55 principles, each of which introduces a method that allows you to write better C++ program code, and discusses it in detail with specially designed examples.
"Programming Techniques to Improve C++ Performance", this book believes that 20% of performance defects will take up 80% of our time. So we focus our efforts where we have the most value. This book discusses in detail temporary objects, memory management, inheritance, virtual functions, inlining, reference counting, STL and other details that may improve the efficiency of C++. Whether you are a practitioner in a related field, a C++ programming enthusiast, or a programming enthusiast eager to break through programming bottlenecks and greatly improve your self-cultivation, this book will definitely benefit you a lot.
"Learning C/C++ from Defects" is essentially a collection of C/C++ incorrect questions. The book includes 63 errors caused by the problem, which are flaws in the title. It is also a guide for avoiding pitfalls.
"C++ Templates Chinese Edition" is a practical book with an in-depth understanding of modern C++ templates. Not only is this book the authoritative explanation of C++ templates, but it also provides an in-depth introduction to other general C++ ideas.
"STL Source Code Analysis" provides a detailed understanding of the underlying implementation mechanism of STL, and can also have a deeper understanding of common data structures and C++ memory management.
There are also "C++ Standard Library (2nd Edition)", "C++ Concurrent Programming Practice", "C++ Programming Thoughts (Two Volumes)", etc. I bought all the books introduced, but to be honest, the following few I took a general look at this book and used it as a reference book.
Other documents:
- Huawei's most awesome C++ basics and improvements PDF
- LeetCode101 problem solution
- Google Style Guide for Open Source Projects - Chinese Version
If you need to download the e-book below, just click on the book title and enter the extraction code!
- The second set, the entire eight-part series of Teacher Hou Jie - teaches you step by step the advanced series extraction code: rb16
- 00 - Hou Jie Series - All courseware extraction code: poo3
- 01. C++ Object-Oriented Advanced Programming (Part 1) Extraction code: 51rd
- 01. C++ Object-Oriented Advanced Programming (Part 2) Extraction code: 0869
- 00 - Hou Jie Series - All courseware extraction code: poo3
- 03 - Hou Jie-C++ design pattern extraction code: zn8n
- 04 - Hou Jie-C++ New Standard C++11&14 Extraction Code: 5jl1
- 05 - Hou Jie-C++ memory management mechanism_60_Hou Jie extraction code: b8b3
- 06 - Hou Jie-C++ Startup Revealed: C++ program’s extraction code during life and after death: adro
- 07. Algorithm Principles and Practice (Elective) Extraction Code: 7548
- 08. System Design and Practice (Elective) Extraction Code: 697b
- The third set, Linux CC++ network programming practice - Chen Shuo extraction code: wv79
- Chen Shuo - C++ practical engineering extraction code: blou
- Easy to learn C++ extraction code: yiwo
- Programming techniques to improve C++ performance. Zuo Fei extracted code: anft
- In-depth understanding of C++11 extraction code: py26
- Deep exploration of C++ object model extraction code: 0v2p
- Hou Jie STL courseware extraction code: fuuh
- Write makefile with me. Extraction code: k090
- Dahua design pattern C++ extraction code: r1wi
- Chen Shuo - C++ practical engineering extraction code: dgy4
- STL source code analysis + source code extraction code: nkcl
- Modern C++ Design extraction code: t1kk
- Effective-C++-Second Edition Extraction Code: vy1b
- Effective STL Chinese version extraction code: t3gy
- Effective C++ third edition HD PDF extraction code: bd36
- New thinking in C++ design - Application of generic programming and design Extraction code: 7gew
- C++ Engineering Practical Experience Course Extraction Code: o5v4
- C++ object model extraction code: azv9
- C++ University Tutorial Extraction Code: 012g
- C++ programming language extraction code: abu1
- C++ Meditations Chinese 2nd Edition extraction code: o88v
- C++ concurrent programming practical extraction code: fuj8
- C++ standard library extraction code: 318m
- C++ programming debugging tips extraction code: 8ool
- C++ Programming Thoughts (two volumes) Extraction code: ekkz
- C++ Programming Standard-101 Rules, Guidelines and Best Practices Extraction Code: 0o6k
- C++Primer 5th English version extraction code: cxmu
- C++ Primer exercise set extraction code: lvmx
- C++ Primer-4th edition extraction code: 8gyu
- C++ Primer (5th Edition)_With Bookmarks_HD Full Version Extraction Code: x6rl
- C++ Primer Plus extraction code: i0p7
C++ study notes
- 1. Basic knowledge
- 1. goto statement (not recommended)
- 2. One-dimensional array
- 3. Two-dimensional array
- 4. Value transfer in functions
- 5. Function declaration
- 6. Writing functions in separate files
- 7. Pointer
- 7.1 Basic concepts of pointers
- 7.2 Definition and use of pointer variables
- 7.3 Memory space occupied by pointers
- 7.4 Null pointers and wild pointers
- 7.5 const modified pointer
- 7.6 Pointers and arrays
- 7.7 Pointers and functions
- 7.8 Pointers, arrays, functions
- 8. Structure
- 8.1 Basic concepts of structures
- 8.2 Structure definition and usage
- 8.3 Structure array
- 8.4 Structure pointer
- 8.5 Structure Nested Structure
- 8.6 Structure as function parameter
- 8.7 Const usage scenarios in structures
- 2. Core Programming
- 1. Memory partition model
- 1.1 Before running the program
- 1.2 After running the program
- 1.3 new operator
- 2. Quote
- 2.1 Basic use of references
- 2.2 Notes on citation
- 2.3 Reference as function parameter
- 2.4 Reference as function return value
- 2.5 The nature of citations
- 2.6 Constant references
- 3. Function
- 3.1 Function default parameters
- 3.2 Function place parameters
- 3.3 Function overloading
C++ useful articles
An in-depth exploration of the C++ virtual function table - from a memory perspective
One article will help you learn C++, collect useful information! ! !
The most stable C/C++ learning route in 2022
Now, isn't this the C++ background development learning route you want?
This is the C language and C++ learning route you need!
Campus Recruitment | C++ Backend Development Learning Route
STL summary and common interview questions + information
A collection of free C++ resources that you must use, worth collecting
Twenty thousand words summarizing the key points of "C++ Primer"
In-depth exploration of C++ object model notes
Effective C++ study notes
Summary of C/C++ frameworks and third-party libraries
Systematic combing of C++ function pointers in a 10,000-word long article
If you have learned C++, you must know these 10 details!
Several C/C++ learning websites worth collecting
If C++ were an arrow, which eagle would you shoot with it? | Job sharing
How to multiply from 1 to 20 elegantly using C++ programming?
What is the role of #pragma once in C/C++?
C++ Best Practices (C++ Best Practices) Translation and Reading Notes
Defensive programming techniques
Read C++ with 50,000 words
After reading these 7 items, simulating new C++ features is just a small goal!
Hard core | C++ basics
C++ template summary
C++ methods and principles for reading UTF-8 and GBK series text
C++ date and time programming
C++ programming habits and programming points
C++ memory model
5 minutes to program, 2 hours to name! Let’s talk about naming conventions!
C++ and regular expressions
Handwritten thread pool-C++ version
The use of C++ threads
C++ eight-part essay (1)
C++ uses the chrono library to process dates and times
Hardcore | 50 companies’ C++ experience sharing
C++ compile-time polymorphism and run-time polymorphism
C++ concurrent programming (C++11 to C++17)
C++ memory management (recommended collection)
A 20,000-word long article, the best template metaprogramming article I have ever seen!
A brief analysis of the principle of C++ virtual function table
In-depth analysis of C++ function calling process
Animation demonstration: How to thoroughly understand red-black trees?
C++ performance optimization
A 10,000-word long article | In-depth C++ memory management
A programmer’s path to learning C++
Overview of C++ exception mechanism
Do you know all these basic features of C++ that are not taught in class?
How to avoid memory leaks in C++?
lvalues, rvalues, and dying values in C++11
C/C++ function pointers and pointer functions
The real difference between delete and delete []
C++ study notes
Let’s explore C++ class memory distribution together
[Best Practices] C++ Traps and Routines
Generic Lambda, so powerful!
Architectural thinking: How to make writing programs as easy as building blocks?
Optimizing the performance of software that explains everything for workers
C++ returns objects by value
Which program can withstand such optimization?
The basics of C++
How is thread-safe code written?
Memory management: How programs are loaded into memory gracefully
Simple! This is how the code turns out to be run by the CPU
Summary of 600 most powerful Linux commands
The underlying principles of C++ objects are all here, how dare you say you can’t learn them?
How did C++ go from code to game?
Which is more efficient, if-else or switch-case? Look at these four pictures.
Talk about C++ singleton pattern
Experience it for yourself! Back-end engineer learning paths, books, and video recommendations
Three common memory corruption scenarios and analysis in C++
How many C++ memory leak pitfalls have you stepped into?
Memory pool design and implementation
Open the door to threads | processes | coroutines
In-depth and good article | Interviewer: Process and thread, I only ask these 19 questions
Performance optimization practice | C/C++ unit testing universal instrumentation tool
Handwritten thread pool-C++ version
The use of C++ threads
To what extent can I learn C++ to interview for a job?
C++ memory management (1)
std source code analysis and C++ memory management (2)
How to simplify C++ code
Uncovering the underlying layers of high-performance servers
Windows program crash debugging ultimate weapon
Long article warning! C language and C++ FAQs
Several tips to improve C++ development efficiency
Book list: Expand your understanding of C++
After dealing with all kinds of weird bugs for 13 years, I summed up 18 experiences
What is it like to go to a bank and write code?
Let’s talk about the attributes brought by the new C++ standard
The extreme optimizations of Baidu C++ engineers (concurrency)
The extreme optimizations of Baidu C++ engineers (memory chapter)
Illustration | Explore the secrets of STL sorting algorithm from a martial arts perspective
How to call C interface in C++?
C++ coding optimization to reduce redundant copies or assignments
Why do computers use complement codes?
Have you chosen the right way to generate random numbers?
We have summarized 24 major pitfalls in C++. Let’s see how many of them you can avoid.
Do you know all these knowledge points? Test your C++ entry level
Super hard core | 20,000 words + 20 pictures to help you tear apart the STL serial container source code
A brief analysis of C++ smart pointers and enable_shared_from_this mechanism
Classics never go out of style! Revisiting design patterns
First release on the entire network! ! All the new features of C++20 are in this picture
The last hurdle of C++ | Programmer with an annual salary of one million
The essence of C++ templates
10 big pits caused by memory, how many can you avoid?
Panoramic Guide to C++ Memory Management
How many 9 tips do you know to improve code running efficiency?
Selected 30 C++ interview questions (including analysis)
Tencent C++ written test/interview questions and answers
The first article of a 10,000-word long article on C++ --- Winning the Byte Interview
"Counterattack into a Big Factory" - C++ Chapter 49 Questions and Answers (Absolutely useful information)
"Counterattack into the Big Factory" Part 2 - C++ Advanced Chapter 59 Questions and 59 Answers (Super Hard Core Information)
"Counterattack into Big Factory" - C++ Improvement Chapter 79 Questions and Answers
Implement a malloc memory allocator yourself | 30 pictures
Modern C++ handwritten smart pointers
10 pictures and 22 code snippets, this 10,000-word article will help you understand the virtual memory model and the internal principles of malloc.
Interview Series: C++ Object Layout [Recommended Collection]
How to clean C++ code
Source code analysis C++ string implementation
Popular explanations of 23 design patterns, understand them in seconds after reading them
The most complete summary of Qt learning by a big guy (30,000 words of useful information)
30,000 words Linux summary
Encryption and decryption
Processing of TCP data sticky packets
C++ video recommendation
- C++ video learning tutorial basics
- Teacher Hua Zhengli’s video
- Complete collection of Hou Jie's C++ videos and Chen Shuo's network programming
- The best Qt complete set of video tutorials
C++ open source recommendation
- FreeNOS: In-depth understanding of C++ and operating system principles. FreeNOS (Free Niek's operating system) is a microkernel-based learning operating system based on C++. This is a microkernel operating system implemented in C++. The services in various macrokernels are treated as independent services in the microkernel, using a message-based communication method. This is actually similar to the mach mechanism in the mac kernel.
- Boost: The Boost library is a well-tempered, portable, and source-coded C++ library. As a backup to the standard library, it is one of the engines of the C++ standardization process. The Boost library was initiated by members of the C++ Standard Committee Library Working Group and has a great influence in the C++ community, with nearly 2,000 members. The Boost library brings us the latest, coolest, and most practical technology, and is an out-and-out "accurate" standard library.
- Muduo: A modern C++ network library based on the Reactor mode. It adopts a non-blocking IO model, is event-driven and callback-based, supports multi-core and multi-threading, and is suitable for writing Linux server-side multi-threaded network applications.
- libevent: A lightweight network library.
- log4cpp: Log library, supports multi-threading, redirects logs to the network, etc. Anyway, it has all the logging functions you can think of.
- OpenSSL: OpenSSL includes a command line tool that performs all the functions in the OpenSSL library, and even better, it may already be installed on your system.
- wfrest: A simple and efficient C++11 asynchronous RESTful network framework.
- workflow: currently the most popular, simple and easy-to-use c++ asynchronous network library workflow.
- modern-cpp-tutorial: modern-cpp-tutorial is a modern C++ tutorial, its purpose is to provide a comprehensive introduction to the relevant features of modern C++ (pre-2020).
- MyTinySTL: A small STL (container library + algorithm library) rewritten in C++11. The code structure is clear and standardized, contains Chinese documentation and comments, and comes with a simple testing framework, which is suitable for C++ novices to practice.
- Tinytetris: Tinytetris is a terminal version of the Tetris game written in C++. It provides two versions of source code, divided into annotated version and library version. There are many comments and it is easy to understand and learn.
4. Linux C/C++ school recruitment
The Spring Recruitment is coming. I recommend a few question banks where you can practice C/C++ and algorithms.
I have a CS degree and just accepted an offer from Byte, would you like to share my experience?
Ten thousand words of detailed explanation of the Tencent Linux C++ written test/interview questions and answers I experienced this year
20 C++ interview questions you must master
Take stock of Linux/C/C++/embedded/hardware-related companies
5. Linux C/C++ social recruitment
- Hardcore | 50 companies’ C++ experience sharing
- Take stock of Linux/C/C++/embedded/hardware-related companies