AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Teile von "array of char" in "String" kopieren
Thema durchsuchen
Ansicht
Themen-Optionen

Teile von "array of char" in "String" kopieren

Ein Thema von Bubblegum · begonnen am 4. Okt 2007 · letzter Beitrag vom 4. Okt 2007
Antwort Antwort
Seite 1 von 2  1 2      
Bubblegum

Registriert seit: 8. Sep 2007
57 Beiträge
 
Delphi 2007 Professional
 
#1

Teile von "array of char" in "String" k

  Alt 4. Okt 2007, 12:51
ich möchte Teile eins "array [0..200] of char" in einen "String" kopieren.
Momentan mache ich das mit einer Vorschleife.
Dafür gibt's doch bestimmte eine schnellere Routine., aber finde keine Passende.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Teile von "array of char" in "String&

  Alt 4. Okt 2007, 12:56
Du könntest den Speicherbereich kopieren.
Markus Kinzler
  Mit Zitat antworten Zitat
Bubblegum

Registriert seit: 8. Sep 2007
57 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Teile von "array of char" in "String&

  Alt 4. Okt 2007, 12:57
Mit mache ich das?
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Teile von "array of char" in "String&quo

  Alt 4. Okt 2007, 12:58
Zitat von Bubblegum:
Momentan mache ich das mit einer Vorschleife.
Probiers mal mit einer Nachschleife
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.858 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Teile von "array of char" in "String&

  Alt 4. Okt 2007, 12:59
Schau dir mal Move() an.
Markus Kinzler
  Mit Zitat antworten Zitat
Bubblegum

Registriert seit: 8. Sep 2007
57 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Teile von "array of char" in "String&

  Alt 4. Okt 2007, 13:04
Zitat von inherited:
Zitat von Bubblegum:
Momentan mache ich das mit einer Vorschleife.
Probiers mal mit einer Nachschleife
Vorschleife

Das kann nicht von mir gewesen sein!
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#7

Re: Teile von "array of char" in "String&

  Alt 4. Okt 2007, 13:08
Delphi-Quellcode:
var
  s: string;
  meinarray : array[0..200] of char;
begin
  SetString(s, PChar(@meinarray[40]), 30);
Nachtrag: Cast-Operator PChar() ergänzt
Andreas
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#8

Re: Teile von "array of char" in "String&

  Alt 4. Okt 2007, 13:09
Hi,

ich würde es so machen:

Delphi-Quellcode:
var
  csa: array [Byte] of Char;
  idx, cnt: Integer;
  s: string;
begin
  // ...
  s := Copy(csa, idx, cnt);
end;
Grüße vom marabu
  Mit Zitat antworten Zitat
Bubblegum

Registriert seit: 8. Sep 2007
57 Beiträge
 
Delphi 2007 Professional
 
#9

Re: Teile von "array of char" in "String&

  Alt 4. Okt 2007, 13:14
Zitat von shmia:
Delphi-Quellcode:
var
  s: string;
  meinarray : array[0..200] of char;
begin
  SetString(s, @meinarray[40], 30);
Das kann ich nicht kompilieren -> inkompatible Typen
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#10

Re: Teile von "array of char" in "String&

  Alt 4. Okt 2007, 13:19
Zitat von marabu:
Delphi-Quellcode:
var
  csa: array [Byte] of Char;
  idx, cnt: Integer;
  s: string;
begin
  // ...
  s := Copy(csa, idx, cnt);
end;
Hmmm, das funktioniert zwar, ist aber nicht resourcensparend.
Delphi wandelt einen PChar (hier "csa") ja implizit in einen String um.
Da ja nirgends ein abschliesendes #0 definiert wurde, hängt es von den Umständen ab, wie gross
dieser String wird. Also wird ein langer String erstellt, nur um gleich drauf ein Teilstück rauszukopieren.
Andreas
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz