PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Pascal


Gast
2003-06-26, 19:15:50
Wie kann ich in Turbo Pascal einen String zu einem Char machen und umgekehrt?

stabilo_boss13
2003-06-26, 20:26:36
Kannst du das noch etwas besser beschreiben?

Ein Char ist ein einzelnes Zeichen. Ein String eine Zeichenkette, also eine Aneinanderreihung von Chars. In Pascal wird ein String in einem Array von Chars gespeichert.

mystring : string[15];
ist eine Folge von 15 Chars im Speicher.

BNO
2003-06-26, 23:01:14
Jeder String besteht aus Chars und du kannst auf jeden einzelnen Char-Eintrag innerhalb des Strings zugreifen wie auf ein Feld:
VAR
a : string;
b : char;

...

a := 'hallo';
b := a[1];

ScottManDeath
2003-06-27, 00:31:17
Hi


in pascal steht in im feld string[0] die länge drin. ab string[1] beginnen dann wie bereits gesagt die daten


Bye
ScottManDeath

Modulor
2003-06-28, 13:10:17
Die Pascal Funktion ist StrPCopy aus der Unit Strings.

Beispiel:



var

A: array[0..10] of Char;
S: String;
begin
S := '3DCenter';
StrPCopy(A, S);
Canvas.TextOut(10, 10, string(A));
end;

stabilo_boss13
2003-06-28, 21:18:45
Original geschrieben von Modulor
Die Pascal Funktion ist StrPCopy aus der Unit Strings.
[/code] Und ich dachte immer, StrPCopy konvertiert einen Pascal String in einen Nullterminierten C String.

Darkstar
2003-06-28, 23:35:04
Original geschrieben von stabilo_boss13
Und ich dachte immer, StrPCopy konvertiert einen Pascal String in einen Nullterminierten C String. Genau so ist es. Aus einem „herkömmlichen“ String (1-basiertes Array of Char, an Stelle 0 steht die Länge) wird ein nullterminierter String (0-basiertes Array of Char, das mit #0 beendet wird).