c cpp 资料汇总

582 阅读7分钟

资源

面圈网-面试、学习、考试交流分享平台 (mianshigee.com)

电子书

zlibrary.ga/

weaiken/ebook: classic books of computer science! (github.com)

vscode 快速编译

vscode

franneck94/Vscode-C-Cpp-Runner:🚀轻松编译、运行和调试单个或多个 C/C++ 文件。🚀 --- franneck94/Vscode-C-Cpp-Runner: 🚀 Compile, run and debug single or multiple C/C++ files with ease. 🚀 (github.com)

编译器

c 一次编译,到处运行

jart/cosmopolitan: build-once run-anywhere c library (github.com)

一、C

  1. [Linux C编程一站式学习](Linux C编程一站式学习 (linuxtone.org))
  2. The GNU C Library
  3. GitHub - CPP-Study-Group/Pointer: 只为不被C++的指针扎死[指针/二级指针/函数指针/智能指针/空指针/野指针/零指针/引用...]

二、C++

  1. cppreference

    C++ 参考手册,这个网站始终是我的首选,因为它非常简洁,可读性也很强,不但更新及时(已经到 C++20 了),还提供了很好的示例。GitHub

  2. LearnCpp

    这可以说是最好的 C++ 教程网站了,组织结构非常好,而且内容丰富、易于理解(涵盖面很广,讲解也很细致),会进行定期更新,并增加一些新的主题。毫不夸张的说,它就像一本 C++ 在线书籍。

  3. Cplusplus

    这也是一个学习 C++ 的优秀网站,除了提供相应的教程之外,还有一个很棒的论坛。和其它网站相比,它的价值更多体现在参考上,因为里面解释了许多编程概念,如果对某个特定的东西感到困惑,那么这些概念将会很有帮助。(吐槽一下,更新不及时!)

  4. TutorialsPoint

    Tutorialspoint 是一个顶级网站,之所以这么说,是因为你想学的任何技术(包括 C++),它几乎都提供了详细的教程。保存好就对了,超级有用。(顺便再介绍一个 GeeksForGeeks)

  5. Awesome C++

    想必很多人都知道 GitHub 上的 Awesome-XXX 系列的资源整理,awesome-cpp 就是 fffaraz 发起维护的 C++ 资源列表,内容包括:标准库、Web 应用框架、人工智能、数据库、图片处理、机器学习、日志、代码分析等。这个嘛,可以用到老 O(∩_∩)O哈哈~!

  6. 现代C++(11/14/17/20)

现代 C++ 教程: 高速上手 C++ 11/14/17/20 - Modern C++ Tutorial: C++ 11/14/17/20 On the Fly (changkun.de)

  1. c++ 之父个人主页

Stroustrup: A Tour of C++

  1. c++ 那些事

C++那些事 (light-city.github.io)

  1. c++ 系统学习网站

Learn Contemporary C++ | Concise&Visual Examples | hacking C++ (hackingcpp.com)

  1. c++ 各标准版代码切换

C++ Insights (cppinsights.io)

  1. QT 5

Qt5 tutorial - learn C++ GUI programming with Qt (zetcode.com)

三、最佳实践

  1. c 最佳实践

VincentWei/best-practices-of-c (github.com)

  1. cpp 最佳实践

cpp-best-practices/cppbestpractices: Collaborative Collection of C++ Best Practices. This online resource is part of Jason Turner's collection of C++ Best Practices resources. See README.md for more information. (github.com)

  1. 开发环境

群友推荐:

VS Code + cmake-init + vcpkg/Conan, 跨平台的组合,值得拥有。VS现在主要还是.net,用VS写C++,就跟去超市买自行车一样,也能买,但是比不上专卖店.

c/cpp 包管理工具:

Vcpkg vs Conan:C++的最佳包管理器? (matgomes.com)

四、C资料

C语法参考

C 语言教程 - 网道 (wangdoc.com)

C标准库函数新编手册: C语言标准库函数API使用手册中文版 (gitee.com)

C/C++语法查询手册

cppreference.com

myfreeer/cppreference2mshelp: cppreference.com html archive converter to microsoft help (for Visual Studio 2012+) and chm help (for Windows) (github.com)

Linux

Linux命令大全中文手册: Linux命令使用大全,中文手册 (gitee.com)

现代c++ 11 14 17 20

  1. 0voice/cpp_new_features: 2021年最新整理, C++ 学习资料,含C++ 11 / 14 / 17 / 20 / 23 新特性、入门教程、推荐书籍、优质文章、学习笔记、教学视频等 (github.com)

  2. GitHub - sanhuohq/AwesomeCpp: ---AWESOME--- C++学习笔记和常见面试知识点,C++11特性,包括智能指针、四种强制转换、function和bind、移动语义、完美转发、tuple、多态原理、虚表、友元函数、符号重载、函数指针、深浅拷贝、struct内存对齐、volatile以及union\static等各种关键字的用法等等

  3. c++之父

isocpp/CppCoreGuidelines: The C++ Core Guidelines are a set of tried-and-true guidelines, rules, and best practices about coding in C++ (github.com)

4.现代c++特性

GitHub - AnthonyCalandra/modern-cpp-features: A cheatsheet of modern C++ language and library features.

VIM

vi/vim的使用方法和常用命令哔哩哔哩bilibili

vi常用命令 (freecplus.net)

Linux vi/vim | 菜鸟教程 (runoob.com)

精通 VIM ,此文就够了 - 知乎 (zhihu.com)

youngyangyang04/PowerVim: Make your vim more power and much easer. (github.com)

简介/导航 - Learn VIM (gitbook.io)

C编译

GCC手册

GCC online documentation - GNU Project

GCC中文手册 - liangxiaxu - 博客园 (cnblogs.com)

Linux 教程 | 爱编程的大丙 (subingwen.cn)

基于VSCode和CMake实现C/C++开发 | Linux篇哔哩哔哩bilibili

基于VSCode和CMake实现C++...发 - Linux篇V1.0.pdf

Makefile

seisman/how-to-write-makefile: 跟我一起写Makefile重制版 (github.com)

CMake 现代语法教程

ttroy50/cmake-examples: Useful CMake Examples (github.com)

SFUMECJF/cmake-examples-Chinese: 快速入门CMake,通过例程学习语法。在线阅读地址:https://sfumecjf.github.io/cmake-examples-Chinese/

Introduction-CMake菜谱(CMake Cookbook中文版)-面试哥 (mianshigee.com)

  1. 系列教程,后续知识星球

eglinuxer/study_cmake: Eglinux's CMake course notes (github.com)

  1. cmake 电子书

前言 - 《CMake菜谱(CMake Cookbook中文版)》 - 书栈网 · BookStack

Introduction · Modern CMake (modern-cmake-cn.github.io)

  1. cmake 结合 pkg

vcpkg 从安装到使用 - 掘金 (juejin.cn)

CMake template

filipdutescu/modern-cpp-template: A template for modern C++ projects using CMake, Clang-Format, CI, unit testing and more, with support for downstream inclusion. (github.com)

数据结构、算法

C实现版

TheAlgorithms/C: Collection of various algorithms in mathematics, machine learning, computer science, physics, etc implemented in C for educational purposes. (github.com)

全语言

[hello 算法](www.hello-algo.com/)

设计模式

  1. c++

图说设计模式 — Graphic Design Patterns (design-patterns.readthedocs.io)

标准库

  1. 30 Seconds of C++ (STL in C++).

Bhupesh-V/30-seconds-of-cpp: 30 Seconds of C++ (STL in C++). Read More about 30C++ here 👉 (github.com)

  1. 《C++17 STL cookbook》英文版的中文翻译

xiaoweiChen/CPP-17-STL-cookbook: 作为对《C++17 STL cookbook》英文版的中文翻译。 (github.com)

  1. 《STL源码剖析》 by 侯捷

SilverMaple/STLSourceCodeNote: SGI STL source code analysis and note from 《STL源码剖析》 by 侯捷(包含电子书、源码注释及测试代码) (github.com)

  1. 《C++20 STL Cookbook》

13870517674/Cpp20-STL-Cookbook-src: 关于《C++20 STL Cookbook》的代码 (github.com)

  1. Cpp-STL-Examples

dimkatsi91/Cpp-STL-Examples: C++ STL Examples (github.com)

四、GIT

Lazygit

官网

jesseduffield/lazygit: simple terminal UI for git commands (github.com)

推荐博客

lazygit | Deep Thinking Mind (matyle.github.io)

五、开源项目

系列开源项目-提高c/cpp技能

值得推荐的C/C++框架和库 (真的很强大) - 哈骑士 - 博客园 (cnblogs.com)

编译器

winegcc

葡萄酒 • 手册页 (helpmanual.io)

为 winegcc 找到 Ubuntu 13.04 : No windows. h? - IT工具网 (coder.work)

反编译

Boomerang Decompiler

Boomerang Decompiler (sourceforge.net)

Snowman (derevenets.com)

Snowman C++ Decompiler Alternatives: Top 8 Decompilers and similar apps | AlternativeTo

Dll Decompiler (dll-decompiler.cn)

linux c

GitHub - tldr-pages/tldr:📚控制台命令的协作备忘单

GitHub - jaywcjlove/linux-command: Linux命令大全搜索工具,内容包含Linux命令手册、详解、学习、搜集。https://git.io/linux

《Linux环境编译单个C程序文件》 ffmpeg.xianwaizhiyin.net/base-compil… 《Linux环境编译多个C程序文件》 ffmpeg.xianwaizhiyin.net/base-compil… 《Linux环境编译静态库》 ffmpeg.xianwaizhiyin.net/base-compil…

VS biuld 工具

vs2013

Download Visual C++ Redistributable Packages for Visual Studio 2013 from Official Microsoft Download Center

数据库

c++ ORM

  1. ODB License (codesynthesis.com)

COM

c++ 调用 com 组件方法

c++中调用Com组件的方法详解_luckyone906的博客-CSDN博客_c++ 调用com组件

导出函数

普通函数

#ifdef TESTDLLEXPORT
#define DLLEXPORT __declspec(dllexport)
#else
#define DLLEXPORT __declspec(dllimport)
#endif
 
#ifdef __cplusplus
extern "C" {
#endif
 
DLLEXPORT void test();
 
#ifdef __cplusplus
}
#endif

#pragma once
class _declspec(dllexport) exportClass
{
public:
	exportClass(int a);
	~exportClass();
 
	void testexportclass();
 
private:
	int m_a;
};
#include "exportClass.h"
#include <iostream>
using namespace std;
 
exportClass::exportClass(int a) {
	m_a = a;
}
 
exportClass::~exportClass() {
	cout << "export class destructure" << endl;
}
 
void exportClass::testexportclass() {
	cout << m_a << "+++++test export class!" << endl;
}

参考: c++ DLL导出类和导出函数_我要加油呀的博客-CSDN博客_c++ 导出函数

图形学

Italink/ModernGraphicsEngineGuide: 现代图形引擎入门指南 (github.com)

VisualStudio

用于 MSBuild 命令和属性的常用宏

用于 MSBuild 命令和属性的常用宏 | Microsoft Learn

编程语言在线练习

66种

Exercism

c++ 标准切换

C++ Insights (cppinsights.io)

Wine

Winelib

wine - 随笔分类 - 陈洪波 - 博客园 (cnblogs.com)

知识点

static

C/C++ static关键字详解(最全解析,static是什么,static如何使用,static的常考面试题)-CSDN博客