Forum PCLab.pl: Jezyk C problem z porównywaniem zmiennych - Forum PCLab.pl

Skocz do zawartości

Otwarty

Ikona Ostatnio dodane tematy

Ikona Najnowsze pliki

Strona 1 z 1
  • Nie możesz rozpocząć nowego tematu
  • Nie możesz odpowiadać w tym temacie

Jezyk C problem z porównywaniem zmiennych funkcja if i operator < Oceń temat: -----

#1 Użytkownik jest niedostępny   Pecet256 

  • Dyskutant
  • PipPip
  • Grupa: Forumowicze
  • Postów: 19
  • Dołączył: So, 24 Sie 19

Napisany 15 Grudzień 2019 - 18:15

Dzień Dobry.

Mam dziwny problem z operatorem < w języku C.
W kodzie programu mam if ((-i-10)<=qa){....} czyli instrukcje w nawiasach powinny być wykonywane gdy -i-10 jest mniejsze od qa.
Tymczasem kod tan nie jest wykonywany gdy qa=-4 a -i=8 (czyli -i-10=-2) a qa=-4..

Próbowałem naprawić to już na różne sposoby, ale wciąż nie chcę działać...

#2 Użytkownik jest niedostępny   Isharoth 

  • エイドリアンです
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 3547
  • Dołączył: Pn, 27 Cze 16

Napisany 15 Grudzień 2019 - 20:31

Bez kodu nie powiem ci gdzie leży błąd. Jeśli i = -8, a qa = -4 to nie ma prawa tak działać. Sprawdź czy przed if na pewno masz takie wartości jak myślisz. Być może też wchodzisz do ifa, a to z kodem w środku jest coś nie tak? Taka tam zabawa w jasnowidza.

#3 Użytkownik jest dostępny   MitycznyJeż 

  • ŚwiętuJEŻ bo już 20k spamuJEŻ
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 20297
  • Dołączył: So, 12 Kwi 14

Napisany 15 Grudzień 2019 - 21:26

Prościej jest uzyskać pomoc gdy się stworzy minimalny kompletny kod źródłowy demonstrujący dokładnie to, z czym masz problem.
Bez tego... hm. Użyj debugera? ;)

#4 Użytkownik jest niedostępny   Bono[UG] 

  • Wiecznie niewyspany...
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 20362
  • Dołączył: Pt, 27 Wrz 02

Napisany 16 Grudzień 2019 - 09:09

Skoro po lewej stronie porównania jest -2, po prawej -4, to nie ma bata żeby warunek mniejsze lub równe został spełniony. -2 jest po prostu większe od -4.

Na marginesie, if nie jest funkcją, to jest instrukcja warunkowa.

Strona 1 z 1
  • Nie możesz rozpocząć nowego tematu
  • Nie możesz odpowiadać w tym temacie

1 Użytkowników czyta ten temat
0 użytkowników, 1 gości, 0 anonimowych