Числа и строки. Конспект темы
Числа и строки. Конспект темы
Числа и строки. Конспект темы
темы
Hello, friend
Для записи и чтения символов в С++ используют потоки. Стандартные потоки:
Чтобы вывести на экран фразу “Hello, friend!”, нужно написать такой код:
#include <iostream>
int main() {
cout << "Hello, friend!" << endl;
}
#include <iostream>
int main() {
cout << "Hello, friend!" << endl;
#include <iostream>
/*
Здесь начинается функция main.
Работа любой программы начинается с запуска этой функции.
*/
int main() {
cout << "Hello, friend!" << endl; // печатаем на экране и переводим строку
}
Целые числа
Чтобы вывести на экран целое число 42, нужно написать:
#include <iostream>
int main() {
cout << 42 << endl;
}
#include <iostream>
int main() {
int x = 42;
cout << x << endl;
}
#include <iostream>
int main() {
int x = 0;
x = "42"; // ошибка!
}
#include <iostream>
int main() {
int a; // Неинициализированная значением переменная. Её значение будет случайным число
м.
int b = 1; // идеальный вариант
int c1 = 2, c2 = -3; // длинные списки сложно читать, лучше объявлять по одной перемен
ной в каждой строке
}
int main() {
int x = 1 + 2;
int y = x + 3;
cout << x << endl // 3
<< y << endl // 6
<< x * 10 << endl // 30
<< y / 4 << endl; // 1
}
3
6
30
1
В С++ результат деления двух целых чисел — всегда целое число. Дробная часть
отбрасывается.
#include <iostream>
int main() {
int x = 2;
int y = 3;
x = y + 5; // значение x теперь равно 8
x += 2; // значение x теперь равно 10
}
#include <iostream>
Вещественные числа
Вещественные числа представляет тип данных double :
#include <iostream>
int main() {
double pi = 3.14;
}
#include <iostream>
int main() {
double x = 1;
double y = 3;
cout << x + y << endl // 4
<< x - y << endl // -2
<< x * y << endl // 3
<< x / y << endl; // 0.333333
}
#include <iostream>
int main() {
int x = 42;
#include <iostream>
int main() {
int x;
cin >> x;
// результат выражения (x + 0.5) будет неявно приведён к double,
// затем static_cast<int>(...) явно приведёт его к int — отбросит дробную часть
cout << static_cast<int>(x + 0.5) << endl;
}
Ошибки компиляции
Ошибки компиляции проявляются, когда компилятор анализирует ваш код. Если их
исправить, компиляция пройдёт успешно.
Строки
Чтобы создать строковую переменную, нужно объявить переменную типа string и
положите в неё значение:
#include <string>
int main() {
string news = "Great news!"s;
return 0;
}
string name;
string surname;
cout << "Enter your name:"s << endl;
cin >> name >> surname;
cout << "Hello, "s << name << " "s << surname << endl;
Символы
Строка — произвольная последовательность символов алфавита. В string
В C++ тип char хранит число, равное коду символа. Для представления символов
часто используются символьные литералы, в которых символ заключается в
одинарные кавычки:
char letter_a = 'A'; // Сразу понятно, что letter_a хранит код символа A
char letter_a_too = 65; // Тоже хранит код символа A, но это не очевидно
Тип char хранит не строку, а код символа. Если сложить два значения типа char ,
произойдёт не конкатенация символов в строку, а сложение кодов символов и
получится число:
cout << 'A' + 'B' << endl; // Выведет число 131, равное сумме 65 и 66
В C++ под элемент типа char всегда выделяется 1 байт. Этого хватит на букву
латинского алфавита.
#include <iostream>
using namespace std;
int main() {
cout << "I know "s + "C++"s << endl;
// Следующие варианты также возможны
{{ stoi }}[be_translate_cpp_stoi];
{{ stod }}[be_translate_cpp_stod];
int z = 42;
string t = "Hello"s + to_string(z); // В t будет значение "Hello42"
Синтаксис её вызова:
Размер строки, которую вернул метод size , исчисляется в элементах типа char :