Hejho.
Zu 1: Die einzige mir bekannte Möglichkeit findest du [hier], aber der Download geht leider nicht so ganz ...
Zu 2: [Sieht schlecht aus]
Hejho.
Zu 1: Die einzige mir bekannte Möglichkeit findest du [hier], aber der Download geht leider nicht so ganz ...
Zu 2: [Sieht schlecht aus]
Öhm, also das ist eigentlich so leicht es geht.
Für dich ist nur folgender Code interessant.
Ein einfaches cout.
I ist vom Typ short, short ist eigentlich ein integer, allerdings frisst er nicht so viel Speicher, was das Programm um ein klein klein wenig verschnellert.
Um nun einen Integerwert (i) in ein Ascii zeichen umzuwandeln, gibt es die ganz einfache Funktion char(). Noch Unklarheiten?
Hm, wie meinst du das genau?
Verstehe ich das richtig, dass du das beides in einer Anweisung machen willst, also anstatt 2 Zeilen 1?
Falls ja ist mir keine Möglichkeit bekannt das zu machen.
Du könntest dir jedoch eine Funktion selbst schreiben, die das macht, falls das hilft.
Bitte erkläre es ein wenig genauer =)
Ok, thx, leider wird das dann ja nicht als Pointer übergeben, oder?
Ich brauch das ganze aber als Pointer, das ist das Problem ...
Edit:
Juhu !!! Ich habs hinbekommen, läuft nun über eine Referenz und ein Typedef.
Hier die Lösung für alle Interessierten.
typedef short tPoints[2][6];
/* ... */
public:
tPoints points; // Points of each player
/* ... */
void calculateMoveClass::init(tPoints &points)
Trozdem Vielen, Vielen Dank für deine Hilfe.
Jo, das geht.
Kostet dich in etwa 120€, aber ist technisch möglich siehe [Link].
Ja, du hast recht, ich bin mit der Pointersache noch nicht so richtig vertraut
Ersteinmal vielen Dank, dass du dir die Zeit nimmst und versuchst mir zu helfen.
Leider läuft das ganze so auch nicht
Zitat/opt/progs/c++/messalla/src/game.h:48: Fehler: keine passende Funktion für Aufruf von »calculateMoveClass::init(short int [2][6])«
/opt/progs/c++/messalla/src/calculateMove.h:53: Anmerkung: Kandidaten sind: void calculateMoveClass::init(short int**)
Hast du noch eine andere Idee?
Ich fange langsam echt an an C++ zu verzweifeln ...
Also, folgendes, erstmal der Code.
class gameClass
{
private:
calculateMoveClass calculateMove;
public:
gameClass();
short points[2][6]; // Points of each player
};
gameClass::gameClass()
{
this->calculateMove.init(this->points);
}
Alles anzeigen
Also, zuerst wird in der Klasse gameClass eine Instanz der Klasse calculateMoveClass angelegt.
Nun versuche verzweifelt über den Konstruktor einen Referenz oder einen Pointer (ist mir eigentlich egal, welches von beiden) an die Funktion init() der Klasse calculateMoveClass zu übergeben.
Google spuckte nach einigem Suchen folgendes aus.
Ok, versuchen wir das mal.
class calculateMoveClass
{
public:
void init(short *points);
};
void calculateMoveClass::init(short *points)
{
}
Alles anzeigen
Zitat/opt/progs/c++/messalla/src/game.h:48: Fehler: keine passende Funktion für Aufruf von »calculateMoveClass::init(short int [2][6])«
/opt/progs/c++/messalla/src/calculateMove.h:27: Anmerkung: Kandidaten sind: void calculateMoveClass::init(short int*)
Das sagt mir, dass der Funktionsaufruf nicht zur Funktion passt.
Wie schaffe ich es nun, diesen Pointer (oder die Referenz) in der andere Funktion zu haben?
Post Scriptum:
Bitte nicht über evtl. chaotischen Code meckern, ist nunmal mein Stil =)
Ok, läuft jetzt problemlos, vielen Dank
Ok, danke, bin grad in der Schule, werd ich nachher testen.
Nurnoch eine Frage zu den einfachen Anführungszeichen.
Meinst du sie -> '.
Wenn ja, kriege ich da die 1 Fehlermeldung von oben.
Bei mir wird ' ' als Ganzzahl interpretiert.
Also, sehe ich mir nachher mal an, vielen Dank schonmal.
Ich geh zu dieser späten Stunde gleich noch die Wände hoch ...
Also, dreht sich um folgendes.
Ich lese von einem String immer ein Zeichen in einen const char *.
Nun will ich vergleichen, ob dieses Zeichen ein Leerzeichen ist.
const char *fieldSign;
for(short i = 0, iHelp = 0; i < strlen(map.c_str()) -1; i++)
{
fieldSign = map.substr(i, 1).c_str();
// No information
if(fieldSign == " ")
{
cout << "Leerzeichen" << endl;
iHelp ++;
continue;
}
Alles anzeigen
-> Geht nicht.
Ok, dacht ich mir, so kannste den Vergleich knicken, muss also irgendwie anders gehen.
Kommen wir nun zu Google:
Dort kann man viele nützliche Sachen finden, leider gehen die bei mir alle nicht ...
Zitat/opt/progs/c++/messalla/src/game.h:75: Fehler: ISO-C++ verbietet Vergleich zwischen Zeiger und Ganzzahl
Zitat/opt/progs/c++/messalla/src/game.h:75: Fehler: Typumwandlung von »const char*« nach »int« verliert Genauigkeit
Kurzum: Hilfe, kann mir jemand sagen, wie ich das nun schaffe?
Mist, ich dachte str_replace() läuft als Callback-Funktion, so dass erst aus 3 Punkten 2 und dann aus den 2 einer wird ...
Egal, wieder was gelernt =)
Wie meinste das jetzt genau?
Ich dacht das entfernt so auch alle .. O.o
<?php
// Ueberprueft, ob eine ID uebemittelt wurde
if(isset($_GET['id']))
{
// Sicherheitscheck
$id = str_replace('..', '.', $_GET['id']);
// Ueberprueft, ob das Bild vorhanden ist
if(file_exists('images/banner/'.$id.'.gif'))
{
// Liest das Bild ein und sendet den Mime-Type
header('Content-type: image/gif');
readfile('images/banner/'.$id.'.gif');
}
}
?>
Alles anzeigen
Ungetestet!
ZitatAlle Wörter die vom Anwender hinzugefügt worden sind befinden sich in der Datei persdict.dat im Profilordner von Firefox.
Gilt auch für Thunderbird.
Zitatzeitplan:
logo abgabetermin: 08.12.2007
wallpaper abgabetermin: 15.12.2007
banner abgabetermin: 22.12.2007
Bis wieviel Uhr geht das, also könnte man theoretisch das Logo Sonntag um 23.59.59 abgeben?
Falls du noch keine Lösung hast, würde ich es mir auch einmal ansehen
Btw. der Code reicht auch, es muss nicht die URL sein.
Alle Moderatoren sind hier global, sprich jeder Mod hat in jedem Unterforum was zu sagen =)
Ich setzte auf Serverüberlastung durch dieses dämlichen DoS (etc.) Angriffe.
Allerdings hab ich diesen Ausfall selbst kaum.