int a;
double *pd;
pd = &a;
puntatori, errori frequenti
Quiz
•
Computers
•
University
•
Hard
Quentin Meneghini
Used 4+ times
FREE Resource
13 questions
Show all answers
1.
MULTIPLE CHOICE QUESTION
45 sec • 1 pt
int a;
double *pd;
pd = &a;
compiles
compiles with warning
does not compile
compiles but may result in segmentation fault
Answer explanation
Il codice non compila perché si sta cercando di assegnare l'indirizzo di una variabile intera 'a' a un puntatore di tipo 'double'. Questo è un errore di tipo, poiché i tipi non sono compatibili.
2.
MULTIPLE CHOICE QUESTION
45 sec • 1 pt
double b, c, *pd;
b = 3.14;
pd = &c;
*pd = &b;
compiles
compiles with a warning
does not compile
compiles but may result in segmentation fault
Answer explanation
The code does not compile because the line '*pd = &b;' attempts to assign the address of 'b' to the location pointed by 'pd', which is pointing to 'c'. This results in a type mismatch, leading to a compilation error.
3.
MULTIPLE CHOICE QUESTION
45 sec • 1 pt
double b, *pd;
*pd = 3.14;
b = *pd;
compiles
compiles with a warning
does not compile
compiles but may result in segmentation fault
Answer explanation
Il codice compila ma può causare un segmentation fault. Questo accade perché il puntatore 'pd' non è inizializzato prima di essere dereferenziato, portando a un accesso a memoria non valida.
4.
MULTIPLE CHOICE QUESTION
45 sec • 1 pt
int a;
a = &2;
compiles
compiles with a warning
does not compile
compiles but may result in a segmentation fault
Answer explanation
L'assegnazione 'a = &2;' cerca di assegnare l'indirizzo di un valore letterale, che non è valido. In C, non si può prendere l'indirizzo di un valore costante, quindi il codice non compila.
5.
MULTIPLE CHOICE QUESTION
45 sec • 1 pt
double b, c, *pd;
b = 3.14;
c = &(*pd);
compiles
compiles with a warning
does not compile
compiles but may result in segmentation fault
Answer explanation
The code does not compile because 'pd' is a pointer that has not been initialized. Dereferencing an uninitialized pointer leads to undefined behavior, making the statement 'c = &(*pd);' invalid.
6.
MULTIPLE CHOICE QUESTION
45 sec • 1 pt
int a;
double b = 3.14, *pd;
pd = &b;
a = *pd;
printf("%d\t%f\n", a, *pd);
compiles
compiles with a warning
does not compile
compiles but may result in segmentation fault
Answer explanation
Il codice compila correttamente. La variabile 'a' riceve il valore di 'b' tramite il puntatore 'pd', che è un cast implicito da double a int. Non ci sono errori di sintassi o di accesso alla memoria.
7.
MULTIPLE CHOICE QUESTION
45 sec • 1 pt
double b, *pd;
*pd = 3.14;
&b = pd;
compiles
compiles with a warning
does not compile
compiles but may result in segmentation fault
Answer explanation
Il codice non compila perché si tenta di dereferenziare un puntatore non inizializzato (*pd = 3.14;), il che causa un errore. Inoltre, l'assegnazione &b = pd; è errata poiché pd non è un indirizzo valido.
18 questions
C++ Procedurale Best of
Quiz
•
University
12 questions
Quizz Cours 1 ADA
Quiz
•
University
10 questions
BCSC0006 - Quiz 1 - Arrays
Quiz
•
University
8 questions
Dinamikus tömbök
Quiz
•
University
15 questions
TEST-1-PREP
Quiz
•
University
17 questions
Java Programming Quiz
Quiz
•
University
10 questions
C++ Training-Day 1_Quiz
Quiz
•
University
13 questions
Syntax, Logic and Runtime errors 2024
Quiz
•
10th Grade - University
25 questions
Equations of Circles
Quiz
•
10th - 11th Grade
30 questions
Week 5 Memory Builder 1 (Multiplication and Division Facts)
Quiz
•
9th Grade
33 questions
Unit 3 Summative - Summer School: Immune System
Quiz
•
10th Grade
10 questions
Writing and Identifying Ratios Practice
Quiz
•
5th - 6th Grade
36 questions
Prime and Composite Numbers
Quiz
•
5th Grade
14 questions
Exterior and Interior angles of Polygons
Quiz
•
8th Grade
37 questions
Camp Re-cap Week 1 (no regression)
Quiz
•
9th - 12th Grade
46 questions
Biology Semester 1 Review
Quiz
•
10th Grade