Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Debuger

Ostatnio zmodyfikowano 2012-12-09 16:47
Autor Wiadomość
kicknoob
Temat założony przez niniejszego użytkownika
Debuger
» 2012-12-09 16:02:28
Jaki jest najdokładniejszy debuger c++ ? Chodzi mi o to aby zwracał uwagę na każdy nawet najmniejszy błąd.
P-70620
Admixior
» 2012-12-09 16:07:13
Z reguły debuggery zwracają uwagę na wszystkie błędy które są w jakiś sposób do wykrycia. np użycie niezainicjalizowanej zmiennej itp.
Jeśli popełnisz logiczny błąd w algorytmie np wykonasz dodawanie zamiast odejmowania (sory za zbanalizowanie) to i tak tego debuger nie wykryje, bo może o takie coś ci chodziło.
P-70622
kicknoob
Temat założony przez niniejszego użytkownika
» 2012-12-09 16:15:16
Chodzi mi o coś takiego że np debugger w c::b/dev c++ nie wykryją błedu zawartego w programie poniżej lecz debugger Ms Visual 2008 Express wykryje :

int N ;
cin >> N ;
int tablica [N] ;
// jakas dalsza czesc
P-70623
m4tx
» 2012-12-09 16:33:03
Wykrycie błędu, który podałeś nie należy do zadań debuggera, tylko kompilatora...

Swoją drogą - to co dałeś, to nawet nie jest tak do końca błąd. http://en.wikipedia.org/wiki/Variable-length_array
P-70626
Admixior
» 2012-12-09 16:35:31
Właściwie to nie jest błąd który ma wykryć debugger tylko kompilator. Takiego czegoś nigdy nie powinno być programu, a debugger wykrywa błędy które są zrobione w gotowym (skompilowanym) programie i normalnie uruchomionym.

Co do dev c++ to nie używaj bo on nie jest normalnie zgodny ze standardem c++ i nie ucz się na nim.
Co do c::b to myślałem że on takie coś nie przepuści.

Co do ostrzeżeń to chyba na każdym kompilatorze możemy sobie ustawić z jakiego poziomu mają być (wszystkie, środnio ważne, ważne,...) każdy kompilator sobie sam nakłada w jaki sposób ma się to ustawiać i co będzie wtedy pokazywał.
P-70627
kicknoob
Temat założony przez niniejszego użytkownika
» 2012-12-09 16:36:06
P-70628
Elaine
» 2012-12-09 16:47:18
W takim razie jaki jest najdokładniejszy kompilator
Clang i GCC, koniecznie w najnowszej możliwej wersji.

Jeśli chcesz włączyć tryb maksymalnego czepialstwa w tych kompilatorach, to kompiluj z
-std=c++11 -pedantic -Werror
, do tego
-Weverything
 w przypadku Clanga i czymś w rodzaju
-Wall -Wextra -Wformat=2 -Winit-self -Wswitch-default -Wswitch-enum -Wunused-parameter -Wstrict-overflow=3 -Wundef -Wcast-align -Wconversion -Wsign-conversion -Wlogical-op
 dla GCC.
P-70629
« 1 »
  Strona 1 z 1