Sprawdź swoją wiedzę o C++ rozwiązując quiz

english version

1.
#40 Jaki będzie rezultat wykonania programu:
#include <cstdio>

class A
{
public:
    A() { printf("A() "); }
    ~A() { printf("~A() "); }
};

class B : public A
{
public:
    B() { printf("B() "); }
    ~B() { printf("~B() "); }
};

int main()
{
    A* pa = new B();
    delete pa;
}
A() B() ~A() ~B()
A() B() ~B() ~A()
A() B() ~A()
A() ~A()
2.
#48 Jaki będzie rezultat wykonania programu:
#include <cstdio>

class B;

class A
{
    friend class B;
    void print() { printf("A"); }
};

class B
{
public:
    void print()
    {
        A a;
        a.print();
    }
};

int main()
{
    B b;
    b.print();
}
B
segmentation fault
A
nie skompiluje siÄ™
3.
#52 Jaki będzie rezultat wykonania programu:
extern "C" {
    #include <stdio.h>

    void print() { printf("A"); }
    void print(const char * m) { printf(m); }
}

int main()
{
    print("B");
}
segmentation fault
A
nie skompiluje siÄ™
B
4.
#55 Jaki będzie rezultat wykonania programu:
namespace n
{
    #include <stdio.h>
};

void print(const char * m) { printf(m); }

int main()
{
    print("B");
}
segmentation fault
m
B
nie skompiluje siÄ™
5.
#66 Jaki będzie rezultat wykonania programu:
#include <cstdio>
#include <assert.h>

int main()
{
    assert(123);
    printf("A");
}
123
A
abort
nie skompiluje siÄ™
6.
#90 Jaki będzie rezultat wykonania programu:
#include <iostream>

using namespace std;

int main()
{
    unsigned short i = 0;
    cout << --i << endl;
}
-1
4294967295
65535
nie skompiluje siÄ™
7.
#75 Jaki będzie rezultat wykonania programu:
#include <iostream>

using namespace std;

int main()
{
    int var = 123;
    int& r = var;
    cout << *r << endl;
}
123
nie skompiluje siÄ™
r
var
8.
#57 Jaki będzie rezultat wykonania programu:
#include <cstdio>

struct A
{
    void print() { printf("A"); }
};

struct B
{
    void print(int val) { printf("B"); }
};

struct C : public A, public B
{

};

int main()
{
    C c;
    c.print();
}
nie skompiluje siÄ™
A
B
C
9.
#101 Jaki będzie rezultat wykonania programu:
#include <iostream>

using namespace std;

struct A
{
    A() { cout << "A() "; fun(); }
    ~A() { cout << "~A() "; fun(); }
    virtual void fun() { cout << "a() "; }
};

struct B :  A
{
    void fun() { cout << "b() "; }
};

int main()
{
    B b;
    b.fun();
}
A() a() b() ~A() a()
A() a() a() ~A() a()
A() b() b() ~A() b()
nie skompiluje siÄ™
10.
#68 Jaki będzie rezultat wykonania programu:
#include <cstdio>

int main()
{
    int var = 0;

    if(var)
        goto end;

    printf("A");

    end:
        printf("B");
}
AB
A
nie skompiluje siÄ™
B
11.
#12 Jaki będzie rezultat wykonania programu:
#include <cstdio>

int main()
{
    int** pvar = 0;
    printf("%d\n", *pvar);
}
nieokreślona wartość
0
nie skompiluje siÄ™
segmentation fault
12.
#30 Jaki będzie rezultat wykonania programu:
#include <cstdio>

class A
{
public:
    A(int var) { printf("var");  }
};

int main()
{
    A a(123);
}
var
nie skompiluje siÄ™
segmentation fault
123
13.
#106 Jaki będzie rezultat wykonania programu:
#include <iostream>

using namespace std;

struct A
{
    A() { cout << "A() "; }
    virtual ~A() { cout << "~A() "; }
    virtual void fun() { cout << "a() "; }
};

struct B :  A
{
    B() { cout << "B() "; }
    virtual ~B() { cout << "~B() "; }
    virtual void fun() { cout << "b() "; }
};

void f(const A* a) { a->fun(); }

int main()
{
    B b;
    f(&b);
}
nie skompiluje siÄ™
B() A() b() ~A() ~B()
A() B() a() ~B() ~A()
A() B() b() ~B() ~A()
14.
#94 Jaki będzie rezultat wykonania programu:
#include <iostream>
#include <vector>

using namespace std;

int main()
{
    vector<int> vect;
    vect.push_back(1);
    vect.push_back(2);
    vect.push_back(3);

    for(vector<int>::iterator it = vect.begin(); it != vect.end(); ++it)
    {
        cout << "*";
        vect.erase(it);
    }
}
*
segmentation fault
**
***
15.
#16 Jaki będzie rezultat wykonania programu:
#include <cstdio>

#define GET(v) #v

int main()
{
    const char* var = "123";
    printf("%s\n", GET(var));
}
123
var
segmentation fault
nie skompiluje siÄ™
16.
#61 Jaki będzie rezultat wykonania programu:
#include <cstdio>

struct A
{
    virtual void print() { printf("A"); }
};

struct B
{
    virtual void print() { printf("B"); }
};

struct C : public A, public B
{
    void print() { printf("C"); };
};

int main()
{
    C c;
    A* pa = &c;
    pa->print();
}
A
nie skompiluje siÄ™
B
C
17.
#27 Jaki będzie rezultat wykonania programu:
#include <cstdio>

int main()
{
    bool b = true;
    printf("%d\n", b);
}
0
1
true
nie skompiluje siÄ™
18.
#85 Jaki będzie rezultat wykonania programu:
#include <iostream>

using namespace std;

int main()
{
    int i = 5;
    cout << ++++++i << endl;
}
nie skompiluje siÄ™
7
5
8
19.
#42 Jaki będzie rezultat wykonania programu:
#include <cstdio>

class A
{
public:
    A() { printf("A() "); }
    virtual ~A() { printf("~A() "); }
};

class B : public A
{
public:
    B() { printf("B() "); }
    ~B() { printf("~B() "); }
};

int main()
{
    B b;
}
B() ~B()
A() B() ~B() ~A()
A() ~A()
A() B() ~A() ~B()
20.
#71 Jaki będzie rezultat wykonania programu:
#include <cstdio>

int main()
{
    int var = 3;

    if(var) printf("A"); var ? printf("B") : printf("C");
    printf("D"); !var ? printf("E") : printf("F");
}
nie skompiluje siÄ™
AD
ABDF
ACDE



Jesteś 11034 osobą wypełniającą ten quiz. | Zaproponuj własne pytanie

Wszystkie pytania i kody są właśnością autora i nie mogą być powielane bez jego zgody. Kody były kompilowane i uruchamiane w środowisku Linux (x86, C++98 gcc 4.4.7, C++11 gcc 4.7.2). Fragmenty kodu są w standardzie C++98 chyba, że podano inaczej w treści pytania. Dokładałem wszelkiej staranności aby pytania były pozbawione błędów, ale jeżeli jakieś błędy zostaną wykryte proszę o kontakt. Pozdrawiam Autor.