Giter VIP home page Giter VIP logo

correct_cpp's Introduction

✔️ Correct C++

Branch Travis CI logo
master Build Status
develop Build Status

Correct C++ is a free, libre and open-source course that corrects (hence the name) exercises for both the right results and good practices.

⚠️ this course does not work until I've updated the scripts to use GitHub Actions ⚠️

The first chapter, scoreboard, shows how this course works.

# Chapter name Goal
0 scoreboard Experience part of how this course works
1 hello Experience how this course works
2 hello_world Create a Hello world program
3 hello_cli Create a CLI application
4 show_args Show CLI arguments
5 is_odd Handle exceptions
6 bool_to_coin Achieve 100% code coverage (easy)
7 int_to_word Achieve 100% code coverage (hard)
8 is_prime Lower code complexity (easy)
9 is_perfect Lower code complexity (hard)
10 is_even Use a regular expression
11 euler_1 Multiples of 3 and 5, Project Euler 1
12 euler_2 Even Fibonacci numbers

Guides

Videos

FAQ

See FAQ.

Chapters under construction

# Chapter name Goal
? hello_sfml Use SFML
? hello_qt Use SFML
? to_morse Convert a std::string to morse

correct_cpp's People

Contributors

carmenijsebaart avatar jorikdeboer avatar richelbilderbeek avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

correct_cpp's Issues

Force documentation

It is a good practice to document your functions. For example, within the R programming language, this is mandatory.

Too bad, I cannot find a tool that checks this :-(

Allow for filenames other than main.cpp

check_doc or other scripts assume main.cpp is present. Those scripts should check any .cpp.

Simplest example: add a folder reject_3 in hello, as a copy of reject_2. Within reject_3, rename main.cpp to reject_3.cpp. This now fails (the undocumented .cpp is undetected).

npm: CERT_UNTRUSTED

70.57s$ sudo npm install -g markdown-link-check
npm http GET https://registry.npmjs.org/markdown-link-check
npm http GET https://registry.npmjs.org/markdown-link-check
npm http GET https://registry.npmjs.org/markdown-link-check
npm ERR! Error: CERT_UNTRUSTED
npm ERR!     at SecurePair.<anonymous> (tls.js:1370:32)
npm ERR!     at SecurePair.EventEmitter.emit (events.js:92:17)
npm ERR!     at SecurePair.maybeInitFinished (tls.js:982:10)
npm ERR!     at CleartextStream.read [as _read] (tls.js:469:13)
npm ERR!     at CleartextStream.Readable.read (_stream_readable.js:320:10)
npm ERR!     at EncryptedStream.write [as _write] (tls.js:366:25)
npm ERR!     at doWrite (_stream_writable.js:223:10)
npm ERR!     at writeOrBuffer (_stream_writable.js:213:5)
npm ERR!     at EncryptedStream.Writable.write (_stream_writable.js:180:11)
npm ERR!     at write (_stream_readable.js:583:24)
npm ERR! If you need help, you may report this log at:
npm ERR!     <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR!     <[email protected]>
npm ERR! System Linux 4.4.0-101-generic
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install" "-g" "markdown-link-check"
npm ERR! cwd /home/travis/build/richelbilderbeek/correct_cpp
npm ERR! node -v v0.10.25
npm ERR! npm -v 1.3.10
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /home/travis/build/richelbilderbeek/correct_cpp/npm-debug.log
npm ERR! not ok code 0
The command "sudo npm install -g markdown-link-check" failed and exited with 1 during .

segmentation fault with gold linker

There are some chapters that don't workanymore:

install uses GCC-6, any has this main.pro:

CONFIG += c++14
QMAKE_CXXFLAGS += -std=c++14
QMAKE_LFLAGS += -fuse-ld=gold

status

correct_cpp_show_args states:

./test: line 21:  6645 Segmentation fault      (core dumped) ./main > /dev/null
./test: line 24:  6648 Segmentation fault      (core dumped) ./main hello > /dev/null
./test: line 27:  6651 Segmentation fault      (core dumped) ./main hello world > /dev/null

No idea why three fail and the rest pass,

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.