int myFunction(int i)

{

    if (i < 2)

        return i + 3;

    if (i%2)

    {

        if (i == 6) 

            return i - 1;

        else

            return myFunction(i - 3);

    }

    return myFunction(i /2);

}


// myFunction(12), myFunction(9) ? 


int a1()

{

    int x,y;

    int X[] = {1,3,4,2,6,7,8};

    int *ptr1 = X;

    int *ptr2;

    ptr1 = ptr1 + 2;

    x = *ptr1;

    ptr2 = ptr1 + 3;

    y = ptr2 - ptr1;

    

    return y;

}


// a1 ?


char* a2()

{

    char* str1 = "Hello!";

    char* str2 = malloc(strlen(str1) + 1);

    strcpy(str2,str1);

    

    return str2;

}


// a2 ?



char* a3()

{

    char* str0 = "fauwghghgvwtqfghsgdvvbcvbdvhdhgvgfgfd";

    char* str2 = str0;

    char* str3 = malloc(100);

    strcpy(str3, str0);

    char* str1 = "Hello!";

    str2 = str3 + 4;

    strcpy(str2, str1);

    str2 = str1;

    str1 = str3 + 12;

    strcpy(str1, str2);

    

    return str3;

}


// a3 ?



const int j = 11;

j = 9;

const int i;  

// В чем ошибка?


const i = 9; 

int& j = 3;  

// В чем ошибка?


const int* p; 

int i = 17; 

p = &i;   

*p = 29; 

// В какой строке ошибка?



class MyClass { 

public: 

    static int i;  

    static void myFn(); 

    int ii;   

    MyClass();  

    void Fn();   

    typedef int (*IntMyFn)();   

    enum State { kOne = 0, kTwo };  

private: 

    void Fn1(); 

}; 

// Смысл соответствующих строк? В чем разница между Fn() и Fn1()?



int a = ::b;

// Что это значит?



class Mixin { 

private: 

    int x; 

protected: 

    int y; 

public: 

    Mixin(); 

    Void a(); 

}; 

// Что означают private, protected, public?



void* vp;

// Зачем нужен?


static_cast

const_cast

reinterpret_cast 

dynamic_cast

// Для чего?


int B = 10;

int* x, y; 

x = &B;

y = x;

printf("B = %d", *y);

// Что неправильно? Как сделать правильно?


class G { 

  const int i; 

public: 

  G(int ii); 

}; 

 

G::G(int ii) { i = ii; } 

// Что не так?


// Чем отличаются структура и класс в C++?