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

english version

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

class A
{
public:
    void print() { printf("A"); }
};

int main()
{
    A* a = 0;
    a->print();
}
0
segmentation fault
nie skompiluje siÄ™
A
2.
#14 Jaki będzie rezultat wykonania programu:
#include <cstdio>

int main()
{
    int* pvar = new int(123);
    printf("%d\n", *pvar);
    delete *pvar;
}
nie skompiluje siÄ™
123
adres zmiennej pvar
segmentation fault
3.
#65 Jaki będzie rezultat wykonania programu:
#include <cstdio>
#include <assert.h>

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

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(A& a) { a.fun(); }

int main()
{
    B b;
    f(b);
}
nie skompiluje siÄ™
A() B() a() ~B() ~A()
B() A() b() ~A() ~B()
B() A() a() ~A() ~B()
5.
#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() ~A()
A() B() ~B() ~A()
A() B() ~A()
6.
#86 Jaki będzie rezultat wykonania programu:
#include <iostream>

using namespace std;

int i = 6;

int main()
{
    int i = i;
    cout << i << endl;
}
niezdefiniowana wartość
nie skompiluje siÄ™
0
6
7.
#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
**
*
***
8.
#85 Jaki będzie rezultat wykonania programu:
#include <iostream>

using namespace std;

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

using namespace std;

int i = 5;

int main()
{
    int i[i];
    cout << sizeof(i) << endl;
}
20
5
nie skompiluje siÄ™
1
10.
#100 Jaki będzie rezultat wykonania programu:
#include <iostream>
#include <set>

using namespace std;

struct classcomp
{
  bool operator() (const int& lhs, const int& rhs) const {return lhs>rhs;}
};

int main()
{
    set<int, classcomp> s;
    s.insert(11);
    s.insert(2);
    s.insert(33);

    for(set<int>::iterator it = s.begin(); it != s.end(); ++it)
    {
        cout << *it;
    }
}
33112
33211
21133
nie skompiluje siÄ™
11.
#16 Jaki będzie rezultat wykonania programu:
#include <cstdio>

#define GET(v) #v

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

int main()
{
    int var = 3;

    if(var)
        printf("A");
        printf("B");
        if(var > 1)
            printf("C");
            printf("D");
            if(var > 3)
                printf("E");
                printf("F");
}
ABCDF
ABCD
nie skompiluje siÄ™
AC
13.
#35 Jaki będzie rezultat wykonania programu:
#include <cstdio>

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

int main()
{
    bool var = true;
    A a(var);
}
var
nie skompiluje siÄ™
segmentation fault
bool
14.
#64 Jaki będzie rezultat wykonania programu:
#include <cstdio>

union A
{
    struct
    {
        int m:8;
        int n:4;
    };
    int h;
};

int main()
{
    A a;

    a.h = 0;
    a.m = 0;
    a.n = 1;

    printf("%d", a.h > 0 ? 2 : 0);
}
nie skompiluje siÄ™
0
1
2
15.
#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Ä™
C
B
A
16.
#10 Jaki będzie rezultat wykonania programu:
#include <cstdio>

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

int main()
{
    int var = 0;

    if(var)
        goto end;

    printf("A");

    end:
        printf("B");
}
B
nie skompiluje siÄ™
A
AB
18.
#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);
}
A() B() b() ~B() ~A()
B() A() b() ~A() ~B()
A() B() a() ~B() ~A()
nie skompiluje siÄ™
19.
#17 Jaki będzie rezultat wykonania programu:
#include <cstdio>

#define GET(v) v;

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

using namespace std;

int main()
{
    unsigned short i = 0;
    cout << --i << endl;
}
nie skompiluje siÄ™
-1
4294967295
65535



Jesteś 12567 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.