Wpis z mikrobloga

#programowanie #c/c++

nie wiem czemu, nie wiem jak, ale pewnie znowu czegoś nie widzę, ale w funkcji del nie da się wyjść z pętli while gdyż nie wyświetla sie printf z pytaniem czy chce się kontynuować ani niz poniżej, pętla działa na pewno do tab[k]=nr; ( ͡° ʖ̯ ͡°)

Edit:zapomniałem o kodzie

http://pastebin.com/vHGPQzzk
  • 31
  • Odpowiedz
@levil: Bo debugger rzadko kiedy mówi. Zaczaj się przy tym printfie z pytaniem i zobacz czy tam dochodzi. Na pierwszy rzut oka wygląda że powinien.

Jesteś pewien że pętla dochodzi do tab[k] = nr;? Bo moim zdaniem to któryś while się pewnie nie kończy i do tab[k] = nr; jednak nie dochodzi.
  • Odpowiedz
@r3m0: dochodzi, bo cały while działa, to jest tak jakby za tab[k]=nr; był koniec petli bo zaraz po tym idzie od nowa i wyswietla sie tab[k]
  • Odpowiedz
@levil: Poza tym to odważnie liczysz te rozmiary: if (nr > (sizeof(randomtab) / sizeof(int) / 5) || nr < 1)

Skąd pewność, że w wyrazeniu (sizeof(randomtab) / sizeof(int) / 5) najpierw policzy się sizeof(randomtab) / sizeof(int) a dopiero potem / 5?
  • Odpowiedz
@levil: Panie, ale u mnie dochodzi do miejsca gdzie pyta czy kontynuować usuwanie.

Włączam program, naciskam 9, pyta się o nr wiersza i potem pyta czy kontynuować usuwanie.

A więc jeśli u Ciebie nie pyta to pewnie coś się źle wylicza w tych ifach jak są inne dane i while się nie kończy.
  • Odpowiedz