PA2: demo skillcheck vol1

A digital artwork of a programmer working diligently on a laptop with C++ code and memory management diagrams in the background, showcasing elements of logic and problem solving.

C++ Memory Management Quiz

Test your knowledge of C++ programming concepts, particularly around memory management and function overloading. This quiz features challenging questions that will assess your understanding and ability to navigate complex code scenarios.

Key Features:

  • 35 thoughtfully crafted questions
  • Focus on memory handling in C++
  • Multiple choice and text-based answers
35 Questions9 MinutesCreated by CodingExpert42
1.: Předpokládejte následující kód. Jaká bude hodnota proměnné x? 
 
int bar ( int a )
{
return 2 * a;
}
int foo ( const int & a )
{
return bar ( a + 2 );
}
...
const int DATA = 70;
int x = foo ( DATA );
Program lze zkompilovat, nespadne, ale alokuje prostředky (paměť), kterou neuvolní
Program lze zkompilovat, nespadne, ale výsledek je nedefinovaný
Program nepůjde zkompilovat
Program lze zkompilovat, ale po spuštění spadne (může spadnout)
Zobrazí se:
(1.) Zobrazí se?
2.: Předpokládejte následující kód. Jaká bude hodnota proměnné x?

int bar ( int a )
{
return 2 * a;
}
int foo ( int & a )
{
return bar ( a + 2 );
}
...
const int DATA = 35;
int x = foo ( DATA );
Program lze zkompilovat, nespadne, ale alokuje prostředky (paměť), kterou neuvolní
Program lze zkompilovat, nespadne, ale výsledek je nedefinovaný
Program nepůjde zkompilovat
Program lze zkompilovat, ale po spuštění spadne (může spadnout)
Zobrazí se:
3.: Předpokládejte následující kód. Jaká bude hodnota proměnné x?

int bar ( int a )
{
return 2 * a;
}
int foo ( int & a )
{
return bar ( a + 2 );
}
...
int x = foo ( 49 );
Program lze zkompilovat, nespadne, ale alokuje prostředky (paměť), kterou neuvolní
Program lze zkompilovat, nespadne, ale výsledek je nedefinovaný
Program nepůjde zkompilovat
Program lze zkompilovat, ale po spuštění spadne (může spadnout)
Zobrazí se:
4.: Předpokládejte následující kód. Jaká bude hodnota proměnné x?
 
int bar ( int a )
{
return 2 * a;
}
int foo ( int & a )
{
return bar ( a + 2 );
}
...
int x = foo ( 17 );
Program lze zkompilovat, nespadne, ale alokuje prostředky (paměť), kterou neuvolní
Program lze zkompilovat, nespadne, ale výsledek je nedefinovaný
Program nepůjde zkompilovat
Program lze zkompilovat, ale po spuštění spadne (může spadnout)
Zobrazí se:
5.: Předpokládejte následující kód. Jaká bude hodnota proměnné x?

int bar ( int a )
{
return 2 * a;
}
int foo ( const int & a )
{
return bar ( a + 2 );
}
...
int x = foo ( 63 );
Program lze zkompilovat, nespadne, ale alokuje prostředky (paměť), kterou neuvolní
Program lze zkompilovat, nespadne, ale výsledek je nedefinovaný
Program nepůjde zkompilovat
Program lze zkompilovat, ale po spuštění spadne (může spadnout)
Zobrazí se:
(5.) Zobrazí se?
6.: Předpokládejme následujcící kód. Jaký bude výstup?

int I, * a = new int (9);
for ( I = 0; I < 9; I ++ )
a[i] = I;
delete a;
cout << I;
Program jde zkompilovat, ale pracuje špatně s pamětí a může spadnout
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Výsledek je
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
7.: Předpokládejme následujcící kód. Jaký bude výstup? 
 
int I, * a = new int [21];
for ( I = 0; I < 21; I ++ )
a[i] = I;
delete a;
cout << I;
Program jde zkompilovat, ale pracuje špatně s pamětí a může spadnout
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Výsledek je
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
8.: Předpokládejme následujcící kód. Jaký bude výstup?

int I, * a = new int [97];
for ( I = 0; I < 97; I ++ )
a[i] = I;
delete [] a;
cout << I;
Program jde zkompilovat, ale pracuje špatně s pamětí a může spadnout
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Výsledek je
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
(8.) Výsledek je?
9.: Co bude výsledkem následujícího kódu?

int foo ( int a )
{
return 10;
}
const char * foo ( float b )
{
return "Hello";
}
...
cout << foo ( 'a' );
Výsledek je:
Výsledek záleží na konkrétním kompilátoru nebo platformě
Kód nepůjde zkompilovat
(9.) Výsledek je?
10.: Co bude výsledkem následujícího kódu?

int foo ( int a )
{
return 20;
}
const char foo ( double b )
{
return -3;
}
int x = foo ( 6.0 ); 
Výsledek je:
Výsledek záleží na konkrétním kompilátoru nebo platformě
Kód nepůjde zkompilovat
11.: Co bude výsledkem následujícího kódu?

int foo ( int a )
{
return 10;
}
const char * foo ( float b )
{
return "Hello";
}
...
cout << foo ( 12.5 );
Výsledek je:
Výsledek záleží na konkrétním kompilátoru nebo platformě
Kód nepůjde zkompilovat
12.: Co bude výsledkem následujícího kódu?

int foo ( int a )
{
return 10;
}
const char * foo ( int b )
{
return "Hello";
}
...
int x = foo ( 10 );
cout << x;
Výsledek je:
Výsledek záleží na konkrétním kompilátoru nebo platformě
Kód nepůjde zkompilovat
13.: Předpokládejme následujcící kód. Jaká bude hodnota proměnné x?

void foo ( int a )
{
a += 2;
}
void bar ( int & a )
{
a += 2;
foo ( a );
a += 2;
}
...
int x = 59;
bar ( x );
Program jde zkompilovat, ale po spuštění může spadnout/spadne
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
Výsledek je:
(13.) Výsledek je?
14.: Předpokládejme následujcící kód. Jaká bude hodnota proměnné x?

void foo ( int & a )
{
a += 2;
}
void bar ( int & a )
{
a += 2;
foo ( a );
a += 2;
}
...
int x = 94;
int & y = x;
bar ( y );
Program jde zkompilovat, ale po spuštění může spadnout/spadne
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
Výsledek je:
(14.) Výsledek je?
15.: Předpokládejme následujcící kód. Jaká bude hodnota proměnné x?
 
void foo ( int a )
{
a += 2;
}
void bar ( int & a )
{
a += 2;
foo ( a );
a += 2;
}
...
int x = 36;
bar ( x );
Program jde zkompilovat, ale po spuštění může spadnout/spadne
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
Výsledek je:
(15.) Výsledek je?
16.: Předpokládejme následujcící kód. Jaká bude hodnota proměnné x?

void foo ( int a )
{
a += 2;
}
void bar ( int & a )
{
a += 2;
foo ( a );
a += 2;
}
...
int x = 48;
bar ( x );
Program jde zkompilovat, ale po spuštění může spadnout/spadne
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
Výsledek je:
(16.) Výsledek je?
17.: Předpokládejme následujcící kód. Jaká bude hodnota proměnné x?

void foo ( int & a )
{
a += 2;
}
void bar ( int & a )
{
a += 2;
foo ( a );
a += 2;
}
...
int x = 22;
int & y = x;
bar ( y );
Program jde zkompilovat, ale po spuštění může spadnout/spadne
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
Výsledek je:
(17.) Výsledek je?
18.: Předpokládejme následujcící kód. Jaký bude výstup?

int & foo ( int b )
{
static int a = 26;
a += b;
return a;
}
...
int x = foo( 0 );
int y = foo( 1 );
cout << (x + y);
Program jde zkompilovat, ale po spuštění může spadnout/spadne
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
Výsledek je:
(18.) Výsledek je?
19.: Předpokládejme následujcící kód. Jaký bude výstup?

int & foo ( int b )
{
static int a = 95;
a += b;
return a;
}
...
int x = foo( 0 );
int y = foo( 1 );
cout << (x + y);
Program jde zkompilovat, ale po spuštění může spadnout/spadne
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
Výsledek je:
(19.) Výsledek je?
20.: Předpokládejme následujcící kód. Jaký bude výstup?

int & foo ( int b )
{
static int a = 62;
a += b;
return a;
}
...
int & x = foo( 0 );
int & y = foo( 1 );
cout << (x + y);
Program jde zkompilovat, ale po spuštění může spadnout/spadne
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
Výsledek je:
(20.) Výsledek je?
21.: Předpokládejme následujcící kód. Jaký bude výstup?

int foo ( int b )
{
int a = 42;
a += b;
return a;
}
...
int & x = foo( 0 );
int & y = foo( 1 );
cout << (x + y); 
Program jde zkompilovat, ale po spuštění může spadnout/spadne
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
Výsledek je:
22.: Předpokládejme následujcící kód. Jaký bude výstup?

int & foo ( int b )
{
int a = 88;
a += b;
return a;
}
...
int & x = foo( 0 );
int & y = foo( 1 );
cout << (x + y);
Program jde zkompilovat, ale po spuštění může spadnout/spadne
Program půjde zkompilovat, nespadne, ale neuvolní po sobě alokované prostředky (paměť)
Program nepůjde zkompilovat
Program půjde zkompilovat, nespadne, ale výsledek není definovaný
Výsledek je:
{"name":"PA2: demo skillcheck vol1", "url":"https://www.quiz-maker.com/QPREVIEW","txt":"Test your knowledge of C++ programming concepts, particularly around memory management and function overloading. This quiz features challenging questions that will assess your understanding and ability to navigate complex code scenarios.Key Features:35 thoughtfully crafted questionsFocus on memory handling in C++Multiple choice and text-based answers","img":"https:/images/course4.png"}
Powered by: Quiz Maker