#include <iostream>
#include <string>
using namespace std;
int main()
{
int int_number = 2147483647; // 2^32 / 2 -1 = 2^31 -1 = 2147483648 -1 // -2^31 = -2147483648
long long_integer = 9223372036854775807; // 2^64 / 2 - 1= 2^63 -1 = 2147483648 -1 // -2^63 = -2147483648
float low_precision_big_float_number = 9223372036854775807; // 9.22337e+18 = 9.22337 *10^18
double high_precision_big_float_number = 9223372036854775807; // 9.22337e+18 = 9.22337 *10^18
//char are 8bit = 2^8 = 256
char letter_exclamation = 33; // this gets converted through ASCII table to the letter '!'
char letter_A = 65; // this gets converted through ASCII table to the letter '!'
string text = "this is a string, it's not included by default";
int converted_float = 3.21;
cout << "Integer: " << int_number << endl;
cout << "Long Integer: " << long_integer << endl;
cout << "Overflow Integer: " << int_number + 1 << endl;
cout << "Overflow Long Integer: " << long_integer +1 << endl;
cout << "Low precision Big float: " << low_precision_big_float_number << endl;
cout << "High precision Big float: " << high_precision_big_float_number << endl; // command line is the bottleneck of putting out more precision
cout << "Thats the letter '!': " << letter_exclamation << endl;
cout << "Thats the letter 'A': " << letter_A << endl;
cout << text;
return 0;
}