CommNews Forum Home  

Zurück   CnC Foren > Verschiedenes > Tech-Support / Tech-Talk

Antworten
 
Themen-Optionen Thema bewerten Ansicht
  #1  
Alt 08-01-2008, 03:09
Benutzerbild von Der_Mosch
Der_Mosch Der_Mosch ist offline
Fieser Pappkopp

 
Registriert seit: Jan 2001
Beiträge: 8.506
Der_Mosch ist...
Der_Mosch eine Nachricht über ICQ schicken Der_Mosch eine Nachricht über MSN schicken
Style: cncboard
Zitat:
Zitat von MyersGer Beitrag anzeigen
Außerdem hast du deine Konstanten nicht falsch initialisiert. Man sollte einfach nur < statt <= verwenden. Dann muss man weniger nachdenken
Ich weiss, dass das ne Alternative wäre, nur stört es mich, dass die Spielfeldgrösse dann ein Punkt niedriger aussieht, als sie es eigentlich ist (äh... du weisst, was ich meine).
__________________
Zitat:
Zitat von Mokus Beitrag anzeigen
PS: Das Loch interressiert mich schon seit 7 Jahren
I ELUCIDATE THE TRUTH OF A CASE FROM NOW ON!
Mit Zitat antworten
  #2  
Alt 08-01-2008, 09:20
Benutzerbild von MyersGer
MyersGer MyersGer ist offline
Moderator

 
Registriert seit: Jan 2002
Ort: hier :p
Beiträge: 8.002
MyersGer hat noch keine Bewertung oder ist auf 0
MyersGer eine Nachricht über ICQ schicken MyersGer eine Nachricht über MSN schicken MyersGer eine Nachricht über Yahoo! schicken
OL Nick: MyersGer
Style: vBulletin Default
Ähm ne nicht ganz Auf jeden Fall würde das Programm genauso abstürzen, wenn du das machst, was du in deinem vorherigen Post geschrieben hast, also das Ändern der Konstanten.

Du müssteste ja
Code:
const int GAME_ARRAY_WIDTH = 8;
const int GAME_ARRAY_HEIGTH = 5;

int gameArray[GAME_ARRAY_WIDTH+1][GAME_ARRAY_HEIGTH+1];

for (int y = 0; y <= GAME_ARRAY_HEIGTH; ++y)
oder

Code:
const int GAME_ARRAY_WIDTH = 9; //Jeweils +1, da es sich um
const int GAME_ARRAY_HEIGTH = 6;//Angaben für ein Array handelt

int gameArray[GAME_ARRAY_WIDTH][GAME_ARRAY_HEIGTH];

for (int y = 0; y <= GAME_ARRAY_HEIGTH-1; ++y)
(hier haben die beiden Kommentare dann den Sinn, den sie eigentlich beinhalten)
schreiben, damit es zu keinem Speicherzugriffsfehler kommt.

Da sieht

Code:
const int GAME_ARRAY_WIDTH = 8;
const int GAME_ARRAY_HEIGTH = 5;

int gameArray[GAME_ARRAY_WIDTH][GAME_ARRAY_HEIGTH];

for (int y = 0; y < GAME_ARRAY_HEIGTH; ++y)
irgendwie am sinnvollsten aus. Oben schreibt man hin, wie groß das Spielfeld sein soll und so groß isses dann auch. Quasi WYSIWYG


Oder ist es gerade einfach noch zu früh für mich und ich habe deinen Post nicht ganz verstanden?!
__________________
C3H6O Aceton

Burning squirrel

Und nicht vergessen:
Dieser Beitrag hat Superkuh-Kräfte!
Mit Zitat antworten
  #3  
Alt 08-01-2008, 11:26
Benutzerbild von Der_Mosch
Der_Mosch Der_Mosch ist offline
Fieser Pappkopp

 
Registriert seit: Jan 2001
Beiträge: 8.506
Der_Mosch ist...
Der_Mosch eine Nachricht über ICQ schicken Der_Mosch eine Nachricht über MSN schicken
Style: cncboard
Äh... nein. Das Spielfeld ist 10*7 Felder gross Ich glaube, dass dich mein Kommentar verwirrt hat.

Und ich arbeite nicht in Wysiwyg. Ich arbeite mit Wygiwyd.
__________________
Zitat:
Zitat von Mokus Beitrag anzeigen
PS: Das Loch interressiert mich schon seit 7 Jahren
I ELUCIDATE THE TRUTH OF A CASE FROM NOW ON!
Mit Zitat antworten
  #4  
Alt 08-01-2008, 13:50
Benutzerbild von Gonzo
Gonzo Gonzo ist offline
Cabal

 
Registriert seit: Dec 2002
Ort: Berlin
Beiträge: 2.476
Gonzo hat noch keine Bewertung oder ist auf 0
Style: USA
Wenn es 10*7 sein soll, dann sollte man auch 10*7 benutzen
Code:
const int GAME_ARRAY_WIDTH = 10;
const int GAME_ARRAY_HEIGTH = 7;

int gameArray[GAME_ARRAY_WIDTH][GAME_ARRAY_HEIGTH];

for (int y = 0; y < GAME_ARRAY_HEIGTH; ++y)
...
einfach und sauber und letztendlich nicht verwirrend wenn du dass in nen halben Jahr noch mal liest
Warum benutzt du eigentlich const int ? Wäre ein #define GAME_ARRAY_WIDTH 10 im Headerfile nicht praktischer ? Ist dann global bekannt und lässt sich dann auch in anderen Projektdateien leichter weiterverwenden ( z.B. #include "main.h" )
Nebenbei gesagt finde ich die Schreibweise ++y blöd, y++ liest sich irgendwie besser
__________________


MfG Gonzo
Mit Zitat antworten
  #5  
Alt 08-01-2008, 14:50
Benutzerbild von MyersGer
MyersGer MyersGer ist offline
Moderator

 
Registriert seit: Jan 2002
Ort: hier :p
Beiträge: 8.002
MyersGer hat noch keine Bewertung oder ist auf 0
MyersGer eine Nachricht über ICQ schicken MyersGer eine Nachricht über MSN schicken MyersGer eine Nachricht über Yahoo! schicken
OL Nick: MyersGer
Style: vBulletin Default
In diesem Fall ja, bei überladenen Operatoren nicht. Da gibt es dann sogar Performance Unterschiede. Mit dem Postfix-Operator kann man aber bei Rechenoperationen auf die Nase fallen.
Bei For-Schleifen liest sich ein Postfix-Operator aber sicherlich besser, gerade wenn man an seine Mitmenschen denkt . Ansonsten: klarer Fall von Geschmackssache.
__________________
C3H6O Aceton

Burning squirrel

Und nicht vergessen:
Dieser Beitrag hat Superkuh-Kräfte!

Geändert von MyersGer (08-01-2008 um 14:55 Uhr).
Mit Zitat antworten
  #6  
Alt 08-01-2008, 14:55
Benutzerbild von gersultan
gersultan gersultan ist offline
Pinguin

 
Registriert seit: Dec 2000
Ort: Düsseldorf
Beiträge: 29.275
gersultan ist ein C...
OL Nick: gersultan
in den Thread husch und einen Link hinterlass: Programmierer gesucht
Mit Zitat antworten
  #7  
Alt 08-01-2008, 15:45
Benutzerbild von MyersGer
MyersGer MyersGer ist offline
Moderator

 
Registriert seit: Jan 2002
Ort: hier :p
Beiträge: 8.002
MyersGer hat noch keine Bewertung oder ist auf 0
MyersGer eine Nachricht über ICQ schicken MyersGer eine Nachricht über MSN schicken MyersGer eine Nachricht über Yahoo! schicken
OL Nick: MyersGer
Style: vBulletin Default
Den Wunsc ich doch schon aus dem anderen Thread
Ich kann aber nichts ins Board einbinden. Zuviel Fummelarbeit. Das Replay auslesen usw. ist kein Ding aber der Rest... hmmm.
__________________
C3H6O Aceton

Burning squirrel

Und nicht vergessen:
Dieser Beitrag hat Superkuh-Kräfte!
Mit Zitat antworten
  #8  
Alt 08-01-2008, 17:44
Benutzerbild von Der_Mosch
Der_Mosch Der_Mosch ist offline
Fieser Pappkopp

 
Registriert seit: Jan 2001
Beiträge: 8.506
Der_Mosch ist...
Der_Mosch eine Nachricht über ICQ schicken Der_Mosch eine Nachricht über MSN schicken
Style: cncboard
Zitat:
Zitat von Gonzo Beitrag anzeigen
Warum benutzt du eigentlich const int ? Wäre ein #define GAME_ARRAY_WIDTH 10 im Headerfile nicht praktischer ? Ist dann global bekannt und lässt sich dann auch in anderen Projektdateien leichter weiterverwenden ( z.B. #include "main.h" )
Erstens kommt mir das nicht wie guter Stil vor, zweitens ist das keine Konstante, sondern, wie du sicherlich weisst, eine Compilerdirektive.

Zitat:
Zitat von Gonzo Beitrag anzeigen
Nebenbei gesagt finde ich die Schreibweise ++y blöd, y++ liest sich irgendwie besser
Macht in diesem Fall keinen Unterschied.

gers, schöne Werbung. Hat funktioniert
__________________
Zitat:
Zitat von Mokus Beitrag anzeigen
PS: Das Loch interressiert mich schon seit 7 Jahren
I ELUCIDATE THE TRUTH OF A CASE FROM NOW ON!
Mit Zitat antworten
  #9  
Alt 08-01-2008, 21:06
Benutzerbild von MyersGer
MyersGer MyersGer ist offline
Moderator

 
Registriert seit: Jan 2002
Ort: hier :p
Beiträge: 8.002
MyersGer hat noch keine Bewertung oder ist auf 0
MyersGer eine Nachricht über ICQ schicken MyersGer eine Nachricht über MSN schicken MyersGer eine Nachricht über Yahoo! schicken
OL Nick: MyersGer
Style: vBulletin Default
Zitat:
Zitat von Der_Mosch Beitrag anzeigen
Erstens kommt mir das nicht wie guter Stil vor, zweitens ist das keine Konstante, sondern, wie du sicherlich weisst, eine Compilerdirektive.
Genau genommen eine Präprozessordirektive
__________________
C3H6O Aceton

Burning squirrel

Und nicht vergessen:
Dieser Beitrag hat Superkuh-Kräfte!
Mit Zitat antworten
  #10  
Alt 08-01-2008, 22:45
Benutzerbild von Der_Mosch
Der_Mosch Der_Mosch ist offline
Fieser Pappkopp

 
Registriert seit: Jan 2001
Beiträge: 8.506
Der_Mosch ist...
Der_Mosch eine Nachricht über ICQ schicken Der_Mosch eine Nachricht über MSN schicken
Style: cncboard
Wie gesagt, nicht meine Woche.
__________________
Zitat:
Zitat von Mokus Beitrag anzeigen
PS: Das Loch interressiert mich schon seit 7 Jahren
I ELUCIDATE THE TRUTH OF A CASE FROM NOW ON!
Mit Zitat antworten
Antworten

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.
Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:43 Uhr.


Powered by vBulletin Version 3.7.3 (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Template-Modifikationen durch TMS

Affiliates
United Forum GetBoinKeD cnc.onlinewelten.de