Debbuger nie widzi zmiennej. (jak używać polecenia code)

Dlaczego debbuger nie widzi zmiennej ‘i’ oraz ‘bierzaca’. W oknie watch zamiast wartości pisze mi tylko CXXOO17 Error:symbol “bierzaca” not found. (breakpoint jest ustawiony wiersz po deklaracji zmiennej. Sytuacja się zmienia, gdy zadeklaruje je jako static. Chociaż w obu przypadkach sam program “ma” prawidłową wartość zmiennych i dobrze je przypisuje. (BTW w jakich nawiasach zawrzeć polecenie ‘code’, żeby na forum było dobrze wyświetlone ?)

#include

W nawiasach kwadratowych :slight_smile:

Nie działa, zrobiłem tak (co widać powyżej): code[mój program].

Jeśli chcesz debugować to nie kompiluj w trybie Release tylko Debug, czyli bez optymalizacji i z generowaniem informacji debugowania, bo przy Release prawie, że możesz być pewien, że coś Ci kompilator wytnie i/lub zamieni.

EDIT:

@up: KOD , tylko bez spacji po ‘[’.

[code]twój program

[code=php]twój program z kolorowaniem[/code] [/code]


Do czego ci to memory.h ? Kompilator sam powinien przydzielić ci pamięć. Jeśli chcesz mieć kolejność rosnącą to zamieszasz jeśli jest mniejsza, conio.h się nie używa. Licznik static ? Przecież to ma być zmienna a nie stała :) Skoro sprawdzasz następny to sortujesz do przedostatniego, bo potem wychodzisz poza zakres tablicy.

[code=php]#include using namespace std;void main() {int Tablica[5];cout << “Wprowadz 5 liczb. \n”;for (int a=0;a<=4;++a)    cin >> Tablica[a]; for(int i=0;i<4;i++)if (Tablica[i]<Tablica[i+1]) {    int bierzaca=Tablica[i+1];    Tablica[i+1]=Tablica[i];    Tablica[i]=bierzaca;    i=0; }cout <<"Liczby uporzadkowane w kolejnosci rosnacej: " ;for (int a=0;a<=4;++a) cout << Tablica[a] << " ";cin.sync();cin.get(); }  

Fiołek, racja, to wina trybu release.

Drobok, memory.h to pozostałość po poprzednim programie, zapomniałem skasować. Dlaczego conio.h się nie używa? Jest za stare? Bez tego nie działa mi getch(), a system(“PAUSE”) wyświetla mi niepotrzebny tekst. Static powoduje, że zmienna staję się stałą?

Dzięki za pomoc.

używaj:

cin.sync();cin.get();

Zamiast tego getch

Bo jest nieprzenośny.

powiedzmy, chodź static jest pierwszy nie można tego tak powiedzieć imo

Oki, dzięki bardzo. Już rozumiem.

Stałe to const, nie static.

Static się używa by mieć “zmienną funkcyjną”, czy jak to nazwać. Sprawdźcie sobie co zwraca taka funkcja:

int add(){