C++ Quiz - check how good you are

1.
#51 What does the program print?
#include <cstdio>

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

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

int main()
{
    print("B");
}
A
AB
B
compile error
2.
#1 What does the program print?
#include <cstdio>

struct S
{
    static int x;
};

int S::x = 123;

int main()
{
    printf("%d\n", S::x);

    return 1;
}
%d\n
nie skompiluje się
segmentation fault
123
3.
#60 What does the program print?
#include <cstdio>

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

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

struct C : public A, public B
{
    using A::print;
};

int main()
{
    C c;
    c.B::print();
}
compile error
C
A
B
4.
#97 What does the program print?
#include <iostream>
#include <set>

using namespace std;

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

    for(set<int>::iterator it = s.begin(); it != s.end(); ++it)
    {
        cout << *it;
    }
}
33112
21133
33211
11233
5.
#24 What does the program print?
#include <cstdio>

#define ENABLE 1

int main()
{
#if ENABLE > 1
    printf("enabled");
#else
    printf("disabled");
#endif
}
disabled
enableddisabled
enabled
compile error
6.
#78 What does the program print?
#include <iostream>

using namespace std;

int main()
{
    int var1 = 123;
    int var2 = 456;
    int& r;
    r = var1;
    r = var2;
    cout << r << endl;
}
123
r
compile error
456
7.
#73 What does the program print?
#include <iostream>

using namespace std;

int main()
{
    cout << "A" << 123 << "C" << endl;
}
compile error
AC
A123C
123
8.
#48 What does the program print?
#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
compile error
segmentation fault
A
9.
#44 What does the program print?
#include <cstdio>

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

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

int main()
{
    B b;
    A* a = &b;
    a->print();
}
AB
A
BA
B
10.
#16 What does the program print?
#include <cstdio>

#define GET(v) #v

int main()
{
    const char* var = "123";
    printf("%s\n", GET(var));
}
compile error
var
123
segmentation fault
11.
#10 What does the program print?
#include <cstdio>

int main()
{
    int* pvar = 0;
    printf("%d\n", pvar);
}
compile error
pvar
0
segmentation fault
12.
#46 What does the program print?
#include <cstdio>

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

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

int main()
{
    B b;
    A* a = &b;
    a->print();
}
BA
B
A
AB
13.
#99 What does the program print?
#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
11233
21133
33112
14.
#67 What does the program print?
#include <cstdio>

int main()
{
    int var = 3;

    switch(var)
    {
        case 3:
            printf("A");
        case 4:
            printf("B");
        default:
            break;
    }
}
AB
compile error
B
A
15.
#5 What does the program print?
#include <cstdio>

int main()
{
    int var = 123;
    printf("%d\n", var);
}
var
123
segmentation fault
compile error
16.
#54 What does the program print?
namespace n
{
    #include <stdio.h>
};

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

int main()
{
    print("B");
}
m
segmentation fault
compile error
B
17.
#57 What does the program print?
#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();
}
B
A
C
compile error
18.
#29 What does the program print?
#include <cstdio>

int main()
{
    bool b = true;
    int i = b;
    printf("%d\n", i);
}
true
compile error
1
0
19.
#12 What does the program print?
#include <cstdio>

int main()
{
    int** pvar = 0;
    printf("%d\n", *pvar);
}
nieokreślona wartość
segmentation fault
0
compile error
20.
#15 What does the program print?
#include <cstdio>

int main()
{
    const char* var = "123";
    printf("%s\n", var);
}
compile error
segmentation fault
123
var



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.