Это заметки по C++
C++ - это один из самых развитых языков програмирования
Компиляция в c++
g++ -Wall main.cpp -o main.bin
или
clang++ -Wall main.cpp -o main.bin
Базовый код, пишущий классическое “Hello world!”
//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=
//Описание программы
//temp.cpp
//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=
#include <iostream> // include - подключение библиотеки
// iostream - библиотека C++
using namespace std; // Пространство имен
// int main() - главная функция Caller
int main () // int - integer - целое численное
{
cout << "\tHello World!\n" ; // Печать на экране ин-фы
puts("Hello, World!"); // Тоже печать на экране ин-фы
return 0; // Указывает, что программа завершена и сработала успешно
}
//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=
// OUTPUT
/*
Hello World!
Hello, World!
*/
//-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--=
// END
Управляющие символы:
Горизонтальный tab
\t
Новая строка
\n
Вертикальный tab
\v
Возврат в начало данной строки
\r
Переменные
Численные
Целые
int name = 1;
short name = 1;
long name = 1;
Вещественные
float name = 3.14;
double name = 3.15156;
Символьная
char name = 'w';
Строки
auto name = "Word";
string name = "Word";
const char *str = "Words";
char str[] = "A string";
Циклы
while(true) // Вечный цикл
{
}
do {
} while(false); // Выполнится минимум 1 раз, даже с условием false
Функции
if(i = 10) // Если i равно 10
{
}
switch(i)
{
case '1': // Если выбрано 1
puts("Chosen 1");
continue;
case '2': // Если выбрано 2
puts("Chosen 2");
continue;
case '3': // Если выбрано 3
puts("Chosen 3");
continue;
}
РАЗНОЕ ИЗ C++
showpos - Принудительно показывает + перед числом, если оно положитнльное
ws - помогает исправить недостаток cin когда он засовывает в себя символ новой строки
boolalpha - это чтобы вместо 0 и 1 показывалось false и true
Логическое 1 - это истина (сигнал есть), а 0 - ложь (сигнал скончался)
== - это оператор сравнения
x % y - деление по модулю (остаток от деления)
? : - части тернарного оператора
rand() % x - случайное число в диапозоне от 0 до x (плохое качество)
static - поставьте перед видом переменной, чтобы она не самоуничтожилась сама по себе
static_cast<varType>(var)
- конвертация одного типа переменных в другой
Пустой case var: (без действий и break;) - множественный вариант для Switch
enum { DOG, GOAT, PIG } - множество (с инкрементом)
system(“clear”) - очистка экрана
while (true) - цикл “пока” (дан вечный)
Матические числа - числа, которые не дают представления об их значении и которые всегда надо заменять на переменные с этим числом
cin.get() - cin, но также считает пробелы и непечатаемые символы
cerr - cout, но сработает даже если программа рухнет
flush - очистка дисплея от ненужных символов
continue - пропуск одной итерации цикла
random_device rd; // Entropy generator
mt19937 gen(rd()); // Random number generator
int min = 0, max = 6;
uniform_int_distribution<> dist(min, max);
int secret = dist(gen);**
// Крутой рандом
cin.ignore(32767, '\n');
cin.get();
. ^
. |
. |
. |
Введите перед return 0 чтобы программа закончилась после нажатия ползователем клавиши Enter
Есть такие 2 встроенные функции, как min()
и max()
. Они вам позволят начти наибольшее и наименьшее число соответственно
Арифметика в C++
/*
|---------------------------------------------------------------------|
| Оператор | Символ | Пример | Операция |
|---------------------------------------------------------------------|
| Сложение | + | x + y | x плюс y |
|---------------------------------------------------------------------|
| Вычитание | _ | x - y | x минус y |
|---------------------------------------------------------------------|
| Деление | / | x / y | x поделить на y |
|---------------------------------------------------------------------|
| Умножение | * | x* y | x умножить на y |
|---------------------------------------------------------------------|
| Остаток от деления| % | x % y | Остаток от деления x на y |
|---------------------------------------------------------------------|
*/
Тернарный оператор
- Условие
- Результат 1
- Результат 2
((5 < 7) ? true : false)
СОВЕТЫ
Используйте