PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Sprache C: Gibt es eine Deklaration (Z ungleich 0) für Ganzzahlen ?



Vilem
05.01.2012, 17:25
Dumme Frage eines Anfängers in C-Programmierung:
Eine if-Verzweigung soll zu einem Programmabschnitt verzweigen, nur wenn eine Ganzzahl positiv oder negativ (also nicht Null) ist, also: if(Z ungleich 0). Frage: gibt es für "ungleich" ein Zeichen in C ? Ich habe das nicht gefunden.
Ich mache das bisher umständlich mit einer if else-Verzweigung: if(Z>0){Anweisung} if else(Z<0){die gleiche Anweisung}.
Oder kann man das noch anders einfacher machen ?
Danke Vilem

RoboHolIC
05.01.2012, 17:52
Soweit ich mich erinnere, ja. Der Operator ist != .
Optional kann man die Verzweigungslogik invertieren und auf "gleich null" prüfen.

dremler
05.01.2012, 18:00
Ja es ist !=:) Einfach mal nach "C Operatoren" googeln:)

Hubert.G
05.01.2012, 18:14
if(Z){} ist immer wahr solange Z nicht 0 ist.

Ford Prefect
06.01.2012, 11:28
genau, ganz einfach:


int Z;
if(Z) {... }


alles was null ist, liefert in C als Argument von if() eine 0 (entspricht "FALSE"),
alls was ungleich Null ist, liefert in C als Argument von if() eine 1 (entsprcht "TRUE")

wenn also Z ungleich null ist (größer oder kleiner, also Z!=0 ), wird der Körper hinter dem if(Z) ausgeführt,
falls Z gleich Null ist (also Z==0), wird der if-Körper übersprungen

Vilem
06.01.2012, 15:10
Hallo, Dank an alle für die schnelle Antwort ! Programm läuft bestens.
So einfach und zu dumm von mir: hätte ich mit etwas mehr Überlegung ja auch draufkommen können, daß if(Z){} nur wahr, wenn Z nicht Null.
Thema erledigt, nochmals danke, Vilem