astyle
gdb
valgrind
valgrind ./pb1
gcc
-Wall
= afișarea tuturor warningurilor-Werror
= oprire la prima avertizare-g
= include informații de debug în binar-o nume
= numele binarului rezultatgcc -g -Wall -Werror p1.c -o p1
./p1
export LANG=C
gdb
se folosește dacă binarul a produs “Segmentation fault” (sau floating point fault, etc. - orice terminat cu (core dumped)
)
-g
(gcc -g ...
)-g
)gdb ./problema1
r
- run (pornește/continuă execuția)bt
- afișează stiva de apel de funcțiiframe N
- activează (selectează) frame-ul N din stiva de apelprint var
- afișează conținutul variabilei N în acel frameq
- quit (ieșire)Compilați programul următor cu gcc
și verificați-l cu valgrind
:
#include <malloc.h>
int main(
int argc,
char **argv
)
{
char **c;
c = (char**)malloc(2 * sizeof(char*));
c[0] = "hello";
c[1] = "world";
c[2] = "!";
return 0;
}
gets()
+atoi()
sau scanf("%d", &var)
char**
, malloc()
, gets()
8 5 12
.open(), read(), write(), write(), fscanf(), close()
xxd m.bin
open(), read(), write(), write(), fscanf(), close()