Cheatography
https://cheatography.com
Podstawy C++ (Standard 17+)
This is a draft cheat sheet. It is a work in progress and is not finished yet.
Prosty Program
Program w C++ wymaga dyrektyw preprocesora #include
i funkcji main()
, która może się kończyć instrukcją return 0;
|
#include <iostream>
using namespace std;
int main()
{
cout << "Witaj Świecie!";
return 0;
}
Dyrektywa Preprocesora
#include <nazwa_pliku>
- wstawia treść pliku nagłówkowego biblioteki |
#include ”nazwa_pliku”
- wstawia treść pliku nagłówkowego użytkownika |
Przydatne pliki bliblioteki
|
|
|
Funkcje matematyczne takie jak |
|
|
|
|
Potęgowanie |
|
|
|
|
Pierwiastkowanie |
|
|
|
|
Trygonometryczne |
|
|
|
|
Trygonometryczne hiperboliczne |
|
|
|
|
Trygonometryczne odwrócone |
|
|
|
|
Zaokrąglanie |
|
|
|
|
Wartość absolutna |
|
|
|
|
Funkcja ekspotencjalna |
|
Oraz stałe takie jak |
|
|
Stała PI |
|
Stała Eulera |
|
Właściwości typów numerycznych |
|
Funkcje do wartości bezwzględnej oraz generatora liczb pseudolosowych |
|
|
|
|
Liczba pseudolosowa
int losowa = rand() % max + min
|
Czyli |
#include <cstdlib>
srand (time(nullptr)); // inicjalizacja ziarna
v1 = rand() % 100; // 0-99
v2 = rand() % 100 + 1; // 1-100
v3 = rand() % 30 + 970; // 970-999
Komentarze
// w jednej linii
/* w wielu
liniach */
|
Blok instrukcji
Zbiór instrukcji ujętych w instrukcji grupującej jest traktowany jak jedna instrukcja. Taka instrukcja umożliwia deklarowanie danych lokalnych, widocznych tylko w jej obrębie. Stosowana jest głównie w warunkach logicznych i pętlach. |
{
instrukcja 1;
instrukcja 2;
...
instrukcja n;
}
|
|
|
Instrukcja warunkowa if / else if / else
if(warunek_logiczny)
instrukcja;
|
Wykonuje pojedynczą instrukcję jeśli warunek_logiczny jest spełniony (jeśli warunek_logiczny zwraca wartość true
). |
if(warunek_logiczny) {
instrukcja1;
...
instrukcjaN;
}
|
Wykonuje blok instrukcji jeśli warunek_logiczny jest spełniony. W przypadku jednej instrukcji do wykonania nawiasy klamrowe można pominąć. |
if(warunek_logiczny) {
instrukcje1;
} else {
instrukcje2;
}
|
Wykonuje blok instrukcje1 jeśli warunek_logiczny jest spełniony, a w przeciwnym wypadku (warunek logiczny jest niespełniony, czyli ma wartość false
) wykonuje blok instrukcje2. |
if(warunek_logiczny_A) {
instrukcje1;
} else if(warunek_logiczny_B) {
instrukcje2;
} else {
instrukcje3;
}
|
Sprawdza warunek_logiczny_A i jeśli jest spełniony to wykonuje instrukcje1. Jeśli nie jest spełniony to sprawdza warunek_logiczny_B, który jeśli jest spełniony to wykonuje instrukcje2. W przeciwnym wypadku (oba warunki nie są spełnione) wykonuje instrukcje3. |
Uwagi |
1. C/C++ traktuje 0 jako false
a każdą inną wartość jako true
. |
Źle if(0) {...}
Nigdy nie wejdzie do środka |
2. Nie stawiaj średnika po nawiasach po if ()! |
Żle if(!koniec); {
Średnik po if, czyli pusta instrukcja. |
3. Operator przypisania =
zamiast porównania ==
|
Źle if(a=5)
- warunek zawsze spełniony bo po przypisaniu if(5)
(patrz uwaga 1). |
Przykłady |
int x = 20;
if (x > 5)
cout << "x jest większe od 5" << endl;
if(x > 10) {
cout << "x jest większe od 10" << endl;
} else {
cout << "x jest mniejsze bądź równe 10";
}
if (x < 20)) {
cout << "x jest mniejsze od 20";
} else if (x == 20) {
cout << "x jest równe 20";
} else {
cout << "x jest większe od 20";
}
|
Insstrukcja wyboru switch / case
|