Pointers
Was gibt das folgende Programm aus?
#include<iostream>
int main(){
auto a = new int[5]{9, 4, 1, 2};
auto p = a+3;
std::cout << *p;
return 0;
}Optionen: 2, 12, undefiniertes Verhalten, kompiliert nicht
Korrekt: 2
Was gibt das folgende Programm aus?
#include<iostream>
int main(){
auto a = new int[5]{9, 4, 1, 2};
auto p = a+2;
p += 2;
std::cout << *p;
return 0;
}Optionen: 2, 12, undefiniertes Verhalten, kompiliert nicht
Korrekt: undefiniertes Verhalten
Was gibt das folgende Programm aus?
#include <iostream>
int main() {
int a = 5, b = 10, c = 15;
int *arr[] = {&a, &b, &c};
std::cout << arr[1];
return 0;
}Optionen: 5, 10, 15, keine Ahnung
Korrekt: keine Ahnung
Was gibt das folgende Programm aus?
#include<iostream>
int main(){
auto a = new const int[5]{9, 4, 1, 2};
auto p = a+2;
*p += 2;
std::cout << *p;
return 0;
}Optionen: 2, 12, undefiniertes Verhalten, kompiliert nicht
Korrekt: kompiliert nicht
Was gibt das folgende Programm aus?
#include<iostream>
int main(){
int* a = new int[5]{9, 4, 1, 2};
std::cout << *a+2;
return 0;
}Optionen: 1, 11, undefiniertes Verhalten, kompiliert nicht
Korrekt: 11
Was git das folgende Programm aus?
#include<iostream>
int main(){
int* a = new int[2]{1,2};
*a++ = 0;
std::cout << *a;
return 0;
}Optionen: 0, 1, 2, undefiniertes Verhalten, kompiliert nicht
Korrekt: 2