AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Stringlänge in einer Funkctionvariable bezrenzen
Thema durchsuchen
Ansicht
Themen-Optionen

Stringlänge in einer Funkctionvariable bezrenzen

Ein Thema von gandime · begonnen am 30. Jun 2008 · letzter Beitrag vom 2. Jul 2008
Antwort Antwort
gandime
(Gast)

n/a Beiträge
 
#1

Stringlänge in einer Funkctionvariable bezrenzen

  Alt 30. Jun 2008, 23:04
Hi,
ich möchte eine Stringlänge in einer Funkctionvariable bezrenzen also sozusagen das blos halt in richtiger Form
function das(s:string [1]):string;
  Mit Zitat antworten Zitat
Benutzerbild von pilic
pilic

Registriert seit: 10. Aug 2006
Ort: Aschbach
131 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Stringlänge in einer Funkctionvariable bezrenzen

  Alt 30. Jun 2008, 23:12
Wieso so kompliziert? Du kannst es ja innerhalb der Funktion überprüfen mit Length() oder mit SetLength() den String abschneiden
  Mit Zitat antworten Zitat
Cyf

Registriert seit: 30. Mai 2008
407 Beiträge
 
Lazarus
 
#3

Re: Stringlänge in einer Funkctionvariable bezrenzen

  Alt 30. Jun 2008, 23:32
Weil er die Variable z.B. noch benutzen will (falls er sich enschließt daraus keine eigene Funktion zu machen, oder Übergabe per Referenz, etc.).

Delphi-Quellcode:
function das(str: string): string
begin
  Result:= format('%.3s', ['foobar']);
end;
  Mit Zitat antworten Zitat
gandime
(Gast)

n/a Beiträge
 
#4

Re: Stringlänge in einer Funkctionvariable bezrenzen

  Alt 1. Jul 2008, 00:00
natürlich würde ich die Variable nochmal abrufen und ich möchte damit zeigen das die function nur ein zeichen zulässt
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#5

Re: Stringlänge in einer Funkctionvariable bezrenzen

  Alt 1. Jul 2008, 00:15
Für einzelne Zeichen gibts Char.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: Stringlänge in einer Funkctionvariable bezrenzen

  Alt 1. Jul 2008, 05:50
Delphi-Quellcode:
Type
  TStringMitMax80Zeichen = String[80];

{$R+}
Function MyFunc (sParameter : TStringMitMax80Zeichen );
Begin
....
End;
{$R-}
Wo und wie die Bereichsprüfung ($R) hier als Kompileroption genau implementiert wird, kannst du noch ausprobieren.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: Stringlänge in einer Funkctionvariable bezrenzen

  Alt 1. Jul 2008, 06:12
Hallo,

der Compiler-Schalter sollte nicht notwendig sein,
String[80] ist ja automatisch ein ShortString.


Heiko
Heiko
  Mit Zitat antworten Zitat
gandime
(Gast)

n/a Beiträge
 
#8

Re: Stringlänge in einer Funkctionvariable bezrenzen

  Alt 1. Jul 2008, 13:54
jo danke ich so gehts
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#9

Re: Stringlänge in einer Funkctionvariable bezrenzen

  Alt 2. Jul 2008, 07:23
Zitat von hoika:
der Compiler-Schalter sollte nicht notwendig sein,String[80] ist ja automatisch ein ShortString
Würde denn ohne Compilerschalter ein impliziter Typecast von AnsiString => String[80] beim Aufruf nicht zu einem Pufferüberlauf führen?
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
angos

Registriert seit: 26. Mai 2004
Ort: Rheine
549 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Stringlänge in einer Funkctionvariable bezrenzen

  Alt 2. Jul 2008, 07:54
[edit] und weg damit.[/edit]
Ansgar
  Mit Zitat antworten Zitat
Antwort Antwort


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 05:28 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