Sprawdź swoją wiedzę rozwiązując C++ Quiz

english version

1.
#105 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(A* a) { a->fun(); }

int main()
{
    B b;
    f(&b);
}
Nie skompiluje się
B() A() b() ~A() ~B()
A() B() b() ~B() ~A()
A() B() a() ~B() ~A()
2.
#88 Jaki będzie rezultat wykonania programu:
#include <iostream>

using namespace std;

int main()
{
    if(int i = 0)
    {
        cout << "A" << i << endl;
    }
    else
    {
        cout << "B" << i << endl;
    }
}
A0
segmentation fault
B0
Nie skompiluje się
3.
#38 (C++11) Jaki będzie rezultat wykonania programu:
#include <cstdio>

class A
{
public:
    explicit operator bool(void) const { return true; }
};

int main()
{
    A a;
    bool var = a;  
    printf("%d\n", var);
}
true
1
0
Nie skompiluje się
4.
#55 Jaki będzie rezultat wykonania programu:
namespace n
{
    #include <stdio.h>
};

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

int main()
{
    print("B");
}
m
B
segmentation fault
Nie skompiluje się
5.
#53 Jaki będzie rezultat wykonania programu:
extern "C" {
    #include <stdio.h>

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

int main()
{
    print("B");
}
A
Nie skompiluje się
B
spowoduje wyciek pamięci
6.
#91 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(int i = 0; i < vect.size(); ++i)
    {
        cout << vect[i];
    }
}
iii
Nie skompiluje się
123
321
7.
#18 Jaki będzie rezultat wykonania programu:
#include <cstdio>

#define GET(v) "456"

int main()
{
    const char* var = "123";
    printf("%s\n", GET(var));
}
segmentation fault
Nie skompiluje się
123
456
8.
#66 Jaki będzie rezultat wykonania programu:
#include <cstdio>
#include <assert.h>

int main()
{
    assert(123);
    printf("A");
}
A
Nie skompiluje się
123
abort
9.
#93 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>::const_iterator it = vect.begin(); it != vect.end(); ++it)
    {
        cout << *it;
    }
}
123
segmentation fault
Nie skompiluje się
321
10.
#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
***
*
11.
#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;
    }
}
33211
Nie skompiluje się
21133
33112
12.
#25 Jaki będzie rezultat wykonania programu:
#include <cstdio>

int main()
{
    int i = 123;
    printf("%d\n", --i);
}
121
Nie skompiluje się
123
122
13.
#67 Jaki będzie rezultat wykonania programu:
#include <cstdio>

int main()
{
    int var = 3;

    switch(var)
    {
        case 3:
            printf("A");
        case 4:
            printf("B");
        default:
            break;
    }
}
AB
A
Nie skompiluje się
B
14.
#6 Jaki będzie rezultat wykonania programu:
#include <cstdio>

int main()
{
    int var = 123;
    printf("%d\n", &var);
}
123
adres zmiennej var (np. -1076902564)
segmentation fault
Nie skompiluje się
15.
#43 Jaki będzie rezultat wykonania programu:
#include <cstdio>

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

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

int main()
{
    B b;
    b.print();
}
BA
B
AB
A
16.
#83 Jaki będzie rezultat wykonania programu:
#include <iostream>

using namespace std;

int main()
{
    int i = 5;
    cout << ++i++ << endl;
}
6
5
Nie skompiluje się
7
17.
#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");
}
A
B
Nie skompiluje się
segmentation fault
18.
#89 Jaki będzie rezultat wykonania programu:
#include <iostream>

using namespace std;

int main()
{
    unsigned i = 0;
    cout << --++--++i << endl;
}
4294967295
0
Nie skompiluje się
-1
19.
#20 Jaki będzie rezultat wykonania programu:
#include <cstdio>

#define GET(v) v"456"

int main()
{
    printf("%s\n", GET("123"));
}
Nie skompiluje się
123456
123
v456
20.
#95 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 << "*";
        it = vect.erase(it);
    }
}
***
*
segmentation fault
**



Jesteś 8967 osobą wypełniającą ten c++ 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.