#include <iostream>

using namespace std;

int main()
{
    // type bool
    cout << "bool = " << sizeof(bool) << endl;

    // type char
    cout << "char = " << sizeof(char) << endl;
    cout << "signed char = " << sizeof(signed char) << endl;
    cout << "unsigned char = " << sizeof(unsigned char) << endl;

    // type wchar_t
    cout << "wchar_t = " << sizeof(wchar_t) << endl;
    cout << "signed wchar_t = " << sizeof(signed wchar_t) << endl;
    cout << "unsigned wchar_t = " << sizeof(unsigned wchar_t) << endl;

    // type int
    //// decorated by short
    cout << "short = " << sizeof(short) << endl;
    cout << "signed short = " << sizeof(signed short) << endl;
    cout << "short signed = " << sizeof(short signed) << endl;
    cout << "unsigned short = " << sizeof(unsigned short) << endl;
    cout << "short unsigned = " << sizeof(short unsigned) << endl;
    cout << "short int = " << sizeof(short int) << endl;
    cout << "signed short int = " << sizeof(signed short int) << endl;
    cout << "short signed int = " << sizeof(short signed int) << endl;
    cout << "unsigned short int = " << sizeof(unsigned short int) << endl;
    cout << "short unsigned int = " << sizeof(short unsigned int) << endl;

    //// no decoration
    cout << "int = " << sizeof(int) << endl;
    cout << "signed = " << sizeof(signed) << endl;
    cout << "signed int = " << sizeof(signed int) << endl;
    cout << "unsigned = " << sizeof(unsigned) << endl;
    cout << "unsigned int = " << sizeof(unsigned int) << endl;

    //// decorated by long
    cout << "long = " << sizeof(long) << endl;
    cout << "signed long = " << sizeof(signed long) << endl;
    cout << "long signed = " << sizeof(long signed) << endl;
    cout << "unsigned long = " << sizeof(unsigned long) << endl;
    cout << "long unsigned = " << sizeof(long unsigned) << endl;
    cout << "long int = " << sizeof(long int) << endl;
    cout << "signed long int = " << sizeof(signed long int) << endl;
    cout << "long signed int = " << sizeof(long signed int) << endl;
    cout << "unsigned long int = " << sizeof(unsigned long int) << endl;
    cout << "long unsigned int = " << sizeof(long unsigned int) << endl;

    //// decorated by long long
    cout << "long long = " << sizeof(long long) << endl;
    cout << "signed long long = " << sizeof(signed long long) << endl;
    cout << "long long signed = " << sizeof(long long signed) << endl;
    cout << "unsigned long long = " << sizeof(unsigned long long) << endl;
    cout << "long long unsigned = " << sizeof(long long unsigned) << endl;
    cout << "long long int = " << sizeof(long long int) << endl;
    cout << "signed long long int = " << sizeof(signed long long int) << endl;
    cout << "long long signed int = " << sizeof(long long signed int) << endl;
    cout << "unsigned long long int = " << sizeof(unsigned long long int) << endl;
    cout << "long long unsigned int = " << sizeof(long long unsigned int) << endl;

    // type float
    cout << "float = " << sizeof(float) << endl;
    cout << "double = " << sizeof(double) << endl;
    cout << "long double = " << sizeof(long double) << endl;
    return 0;
}