Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

11

29.04.2016, 20:03

Nochmal etwas deutlicher: Benutzt du ||, erzeugst du weniger Aufwand und hast auch weniger Fehleranfälligkeit.
Schau dir mal true | false im Vergleich zu true || false an, der Rückgabewert ist ungleich.
Gewöhn dir einfach an, wirklich && statt & und || statt | zu verwenden, sonst hast du womöglich umso mehr "Spaß", wenn du mal mit JavaScript was programmierst...

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
bool a()
{
    std::cout << "a";
    
    return true;
}

bool b()
{
    std::cout << "b";
    
    return true;
}


int main()
{
    std::cout << ((a()  | b()) ? " executed" : "wtf?") << std::endl;
    std::cout << ((a() || b()) ? " executed" : "wtf?") << std::endl;
    
    std::cout << "true || false : " << std::boolalpha << (true || false) << std::endl;
    std::cout << "true  | false : " << std::boolalpha << (true |  false) << std::endl;
}

Online ausprobieren!

MfG
Check

CeDoMain

Alter Hase

Beiträge: 587

Wohnort: Ilmenau

Beruf: Student für Mechatronik

  • Private Nachricht senden

12

29.04.2016, 23:30

Mal eine andere Frage: Wie kannst du so viele Zeilen Code schreiben, ohne mal zwischendurch einen Testlauf zu machen? Du hast doch irgendwann mal mit 10 oder 20 Zeilen angefangen? Hat das da dann funktioniert? Ich bin ja selbst einer, der liebend gern tausende Zeilen code schreib und dann einmal Ausführt, aber ich rate dir: Mach das nicht! Bau dein Programm in kleinen Stücken auf, die du Stück für Stück ausprobierst. Wenn was klappt machst du weiter, wenn nicht, wird zuerst der Fehler behoben. Bei diesen Stückchen helfen die Methoden/Funktionen, die meine Vorposter schon angesprochen haben.

Ich wünsch dir viel Erfolg beim weiteren Programmieren! ;)
Mit freundlichem Gruß
CeDo
Discord: #6996 | Skype: cedomain

Lass solche persönlichen Angriffe lieber bleiben, meine sind härter.

13

01.05.2016, 16:26

Das mit dem doppeltem || hab ich auch bemerkt als der Kommentar dazu kam, da es wenn das erste true ist das zweite nicht mehr checkt. Und ich muss hier ml meine Variablen verteidigen. Die machen für mich nämlich schon Sinn. Ich habe Abkürzungen aus nem Spiel genommen das ich früher gespielt habe. ( SS = Schlachtschiff, SK = Schlachtkreuzer, KR = Kreuzer... und alles mit nem A hinter enthält alle Koordinaten). Trotzdem danke fÜr die Rückmeldung und die Tipps. Ich hatte es erstmal nicht als Funktion geschrieben da ich keine Idee hatte wie ich es in eine Funktion bringen kann. Hab aber mittlerweile eine Idee. Und ich hab den Code in kleinen Teilen geschrieben. Ich hab erstmal alles mit jedem Schiff als nur ein Punkt geschrieben und mir dann Gedanken dazu gemacht wie ich sie größer machen kann.
Mfg Rubbellos

14

01.05.2016, 16:54

Und ich hab den Fehler gefunden. Ich habe a++ anstatt ++a verwendet, sodass den Variablen ein falscher Wert zugewiesen wurde...

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Rubbellos« (01.05.2016, 17:31)


Werbeanzeige