SO

A visually appealing digital illustration of a programmer working with C code on multiple monitors, surrounded by system call diagrams and memory management graphics.

Mastering C Programming and System Calls Quiz

Test your knowledge and skills in C programming and system calls with this engaging quiz! Whether you are a student, a teacher, or just someone looking to sharpen your understanding of C, this quiz covers various aspects of memory management, system calls, and process control.

  • Challenging questions across multiple topics
  • Assess your understanding of C syntax and functions
  • Gain insights into memory management practices
13 Questions3 MinutesCreated by CodingFalcon972
.............. char *a = strdup("ciao"); ..............
Se COPIA consiste nell'istruzione memcpy(p[1], p[0], sizeof(struct s));, allora le istruzioni seguenti (se eseguite) avranno un effetto non predicibile
Se COPIA consiste nell'assegnamento p[1] = p[0];, allora l'ultima istruzione scriverà c0ao c0ao c0ao c0ao
Se COPIA consiste nell'assegnamento p[0] = p[1];, allora l'ultima istruzione scriverà c0ao ciao ciao ciao
Se COPIA consiste nell'assegnamento p[1] = p[0];, allora le istruzioni seguenti (se eseguite) avranno un effetto non predicibile
Struct s { .......... } p[5]
Non è stata allocata la memoria per le 5 aree puntate dai 5 campi a
È stata allocata la memoria per 5 strutture di tipo struct s sullo heap
È stata allocata la memoria per 5 strutture di tipo struct s sullo stack delle chiamate
È stata allocata la memoria per I 100 caratteri dei 5 campi b sullo stack delle chiamate
Sudo cp -a `w hich cat` . Sudo chmod u+s cat ./cat & cat &
Entrambi I job lanciati saranno in stato di Stopped
Eseguendo il comando ps h -oruid -p `jobs -l | awk '{print $2}'` si ottengono 2 numeri diversi
Eseguendo il comando ps h -opid -p `jobs -l | awk '{print $2}'` si ottengono 2 numeri diversi
Eseguendo il comando ps h -oeuid -p `jobs -l | awk '{print $2}'` si ottengono 2 numeri diversi
Echo -n "Esecuzione in corso..." /bin/ls -la / echo "fatto"
Nessuna delle altre opzioni è corretta
Char **argv = {"/bin/ls", "-la", "/"}; printf("Esecuzione in corso..."); execv("/bin/ls", argv); printf("fatto\n");
Char **argv = {"-la", "/", 0}; printf("Esecuzione in corso..."); execv("/bin/ls", argv); printf("fatto\n");
Char **argv = {"/bin/ls", "-la", "/", 0}; printf("Esecuzione in corso..."); execv("/bin/ls", argv); printf("fatto\n");
FILE *stream = fopen("file_esistente.txt", "r"); fseek(stream, -100, SEEK_END); long pos = ftell(stream);
CUR
END
SET
Ltell
Quale delle seguenti affermazioni sulle syscall wait e waitpid è falsa?
Se una chiamata wait(&status); ha successo, il valore di status contiene, tra le altre cose, un flag che indica se il processo figlio appena terminato è terminato in modo normale
Se una chiamata wait(&status); ha successo, il valore di status contiene, tra le altre cose, l'exit status del processo figlio appena terminato
Se una chiamata wait(&status); ha successo, il valore di status contiene, tra le altre cose, il PID del processo figlio appena terminato
Se una chiamata wait(&status); ha successo, il valore di status contiene, tra le altre cose, un flag che indica se il processo figlio appena terminato è stato ucciso da un segnale
Int main() { struct s { char *a; char b[20]; } *p[5]; ... }
È stata allocata la memoria per 5 strutture di tipo struct s sullo heap
Nessuna delle altre opzioni è vera
È stata allocata la memoria per I 100 caratteri dei 5 campi b sullo stack delle chiamate
È stata allocata la memoria per 5 strutture di tipo struct s sullo stack delle chiamate
Quale dei seguenti frammenti di codice è corretto?
== , figlio padre
==, padre figlio
< e >
Tutte sbagliate
Int var = somefunction()%100; printf("%d\n%.2lf\n", var, (double)var);
*buf
Buf[7]
Free(but)
Var2 = (double)var;
#include #include #include ..... char *a = strdup("ciao"); ......
Se COPIA consiste nell'assegnamento p[1] = p[0];, allora l'ultima istruzione scriverà c0ao c0ao c0ao c0ao
Se COPIA consiste nell'istruzione memcpy(&p[1], &p[0], sizeof(struct s));, allora l'ultima istruzione scriverà c0ao ciao c0ao ciao
Se COPIA consiste nell'assegnamento p[0] = p[1];, allora l'ultima istruzione avrà un effetto non predicibile
Se COPIA consiste nell'assegnamento p[1] = p[0];, allora l'ultima istruzione scriverà c0ao ciao c0ao ciao
Ignorando eventuali memory leaks, quale dei seguenti frammenti di codice può portare ad un segmentation fault?
Char *p = malloc(10*sizeof(char)); p[1] = 'a'; free(p);
Char *p = malloc(10*sizeof(char)); p[9] = 'a'; p = NULL; p = realloc(p, 10*sizeof(char)); free(p);
Char *p = calloc(10, sizeof(char)); p[9] = 'a'; p = realloc(p, 10*sizeof(char)); free(p);
Char *p = calloc(10, sizeof(char)); p[9] = 'a'; free(p); p = realloc(p, 10*sizeof(char)); free(p);
Int var = somefunction1(); double var2 = somefunction2(); fprintf(stdout, "%d\n%lf\n", var, var2);
No linea lunga
Linea lunga .... write(1, buf, sizeof(var2) + 1);
Linea lunga ... write(1, "\n", 1);
No linea lunga
FILE *stream ....... 4567 34.56
Linea lunga e senza commenti
Qua non effettua alcuna conversione
Qua la effettua ma il buffer ....
Senza commenti
{"name":"SO", "url":"https://www.quiz-maker.com/QPREVIEW","txt":"Test your knowledge and skills in C programming and system calls with this engaging quiz! Whether you are a student, a teacher, or just someone looking to sharpen your understanding of C, this quiz covers various aspects of memory management, system calls, and process control.Challenging questions across multiple topicsAssess your understanding of C syntax and functionsGain insights into memory management practices","img":"https:/images/course7.png"}

More Quizzes

SAED
693484
100%% DANKEST HLTV QUIZ
158521
Panchayat Talati Mantri, Junior Clerk And Gram Sevak Exam Useful Online Test No.2
158405
Divine Feminine Energy Quiz
745
Which Member of Bone Zone are you??
147116
CSOSS LOK
158104
DWF Quiz (HARD EDITION)
15892
Discover Your Ideal D&D Class
147113
Powered by: Quiz Maker