Moin,
Kann mir einer erklären was genau ein String ist und was die Zahl in den Klammern bedeutet.
z.B.String[128];
Was hat die 128 zu sagen?
Mit freundlichen Grüßen
Moin,
Kann mir einer erklären was genau ein String ist und was die Zahl in den Klammern bedeutet.
z.B.String[128];
Was hat die 128 zu sagen?
Mit freundlichen Grüßen
Ein String ist, ganz einfach, ein Text.
Die Zahl hinter dem Variablennamen sagt, wieviele Dimensionen die Variable hat -
hier 128.
Bei Pawn benötigt jede Ziffer eine Dimension,
du kannst also einen Text von max. 128 Zeichen in deiner Beispielsvariable speichern.
ein string ist z.B ein name mit dem du connectest.
du kannst new String[128]; machen.
Die 128 ist die Länge des Strings wobei 128 die maximal länge in samp ist
Strings kannst du z.B so bei OnPlayerConnect oder sonstwo verwenden z.B bei Admin kick cmd etc
Hier mal ein Simples String beim Connect
public OnPlayerConnect(playerid)
{
new String[128],Name[MAX_PLAYER_NAME];
GetPlayerName(playerid, Name, sizeof Name);
format(String, sizeof String,"%s hat den Server betreten!",Name);
SendClientMessageToAll(0xFF0000FF,String);
return 1;
}
z.B wenn du mit den Namen "Test" connectest erscheint in Rot: "Test hat den Server betreten!"
Zitatwobei 128 die maximal länge in samp ist
Tuts schon weh?
Tuts schon weh?
was meinst du ?
Ein String kann so lang sein wie du willst (theoretisch, praktisch frisst das Speicher und du bist an die Hardware des Servers gebunden)
Tuts schon weh?
Wo ist der "gefällt mir" Button?
@Topic: 128 war mal die höchste Anzahl von Ausgabezeichen im SAMP Chat. Seit den neuen Farbfunktionen in 0.3c liegt das aber ein wenig höher.
Hi
Die Zahl in den klammern entspricht so vielen Dimensionen, wie die Zahl groß ist? oO
Hab ich aber iwie anders in erinnerung:
new array[pustekuchen] = 1-Dimensional
new array[pustekuchen][pustekuchen] = 2-Dimensional
new array[pustekuchen][pustekuchen][pustekuchen] = 3-Dimensional
Oder etwa nicht?
Mal schnell gegooogelt, da stehts auch klick
MFG, Robdeflop®
Das mit den Dimensionen war eine Metapher, um Arrays in einem Satz zu erklären
Die Vorstellung von Parallel-Welten, wie Dimensionen, sollte zeigen, dass jeder Array-Index einen eigenen Wert haben kann,
unabhängig von den anderen.
Grundsätzlich hast du natürlich recht, das richtige Fachvokabular hat das Wort "Dimension" für mehrdimensionale Arrays definiert
Zitatdu kannst also einen Text von max. 128 Zeichen in deiner Beispielsvariable speichern.
waren es nicht 127 Zeichen + 0 - Terminierung?
Edit: Zitat ausm Wiki :
Zitatso in a 20 cell array you can have a 19 character string and a NULL termination character.
Das heißt dann aber dass man in einen 128-String nur 127 Zeichen schreiben kann, so war meine Aussage ja auch gemeint.
Zitatwaren es nicht 127 Zeichen + 0 - Terminierung?
Gehen wir mal von diesem Array aus: String[3];
Werte können dann in diesen Arrays gespeichert werden:
string[0]
string[1]
string[2]
Und das sind auch 3
Ach stimmt war grad etwas verwirrt ;D Fängt ja bei 0 an zu zählen hört dafür aber eins früher auf..
Das stimmt natürlich, aber hier ging es eben um die maximale Anzahl von Zeichen. Und da \0 auch eine Zelle "verbraucht" sind´s 128.
Ach, lassen wir die Erbsenzählerei. Das bringt dem Thread Ersteller schließlich nicht weiter.
Naja im grunde schon. Somit weiss er das er wenn er "Hallo" in nen string packen muss, der string mind. 6 irgendwas groß sein muss (Hallo = 5 Bustaben; 5+1 = 6).