Skip to content

help you learn C++ by fixing bugs in C++ exercise files

License

Notifications You must be signed in to change notification settings

zhangzhuang15/Step-Cplusplus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

关于本项目

在github上逛了一些教程类的项目,也跟着学习过,但是在学习过程中,发现了其中的一些不方便的地方。

有的说教很多,实践行不高,让人看后如过眼云烟。

有的虽然有例子,但是读者想要运行它们,还要在命令行和切换目录上费些周折。

本项目给出了关于C++的一个小教程,分成若干小节,每个小节中分布若干练习。

这些练习有如下特点:

  • 尽量精简,一个练习只涉及一个知识点,尽量不将若干知识点揉在一起;
  • 例子非常简单,代码量不大,不复杂;
  • 给出执行练习中的代码的指令,读者不必进入到对应目录执行g++指令;
  • 不是每个练习都能顺利运行成功,很多的练习都有错误,不过按照笔者给出的注释一点点操作、修改,最终可以运行成功,在这个改错的过程中,读者可以形象地学习到知识点;

注意:

  • 部分C++的关键字会分散在练习中被提及到,也就是说整个项目并不是完完全全按照关键字设计的,因为关键字可能有好几种用法,必须要和数组、函数等具体的对象结合才能体现,所以就不把它们单独拿出来介绍了;
  • 整个C++代码是按照C++11运行的;
  • 项目在开发的时候是在ARM64,g++报出的错误可能有所差别;
  • 对于Arm64 MacOS,可以直接使用本项目自带的make指令;
  • 对于Linux、Windows、Intel MacOS,请
    • 下载 Rust
    • 在项目根路径下,执行
      cd Runner
      cargo build --release
      mv target/release/run-executable ../
      
      后续笔者会利用Rust的交叉编译工具进行优化🤩

 

使用本项目

  • 如果某练习中含有README.md,请先阅读它;
  • 没有README.md,直接看main.cpp;
  • 运行示例的代码已经在main.cpp的注释里给出,执行指令时直接在本项目的根目录终端运行即可,不必切换到exercise目录中;
  • 对于第10节、6-24,需要读者切换到该目录下执行指令,其余章节不需要;

 

项目进展

2022.2.2
使用go语言重写run-executable二进制文件,支持跨平台。
二进制文件含义解释 run-executable-darwin-arm64-go:

  • darwin这个位置表示操作系统,MacOS对应 darwin,Windows对应windows,Linux对应linux;
  • arm64这个位置表示CPU架构,Intel macOS对应 amd64,M1 macOS对应 arm64,Windows仅支持amd64(或叫X86_64,X64),请看清自己的计算机是跑在什么架构的CPU上;
  • 使用之前,请选择对应的二进制文件名,将Makefile文件中的executable变量值修改为你选择的二进制文件名,即可使用啦。

结束语

  • 欢迎大家使用
  • 欢迎大家提出建议
  • 欢迎大家没事儿给个 star🥳

About

help you learn C++ by fixing bugs in C++ exercise files

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published