AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Inkompatible Typen: AnsiChar und Char
Thema durchsuchen
Ansicht
Themen-Optionen

Inkompatible Typen: AnsiChar und Char

Ein Thema von strom · begonnen am 4. Sep 2016 · letzter Beitrag vom 5. Sep 2016
Antwort Antwort
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#1

AW: Inkompatible Typen: AnsiChar und Char

  Alt 5. Sep 2016, 16:08
Und dann noch statt Length SizeOf verwenden, dann ist man auf der sicheren seite
Das geht aber in die Hose. Sizeof(Shortstring) liefert die Länge des Buffers nicht die Länge des darin enthaltenen Strings

Fritz
Fritz Westermann
  Mit Zitat antworten Zitat
nahpets
(Gast)

n/a Beiträge
 
#2

AW: Inkompatible Typen: AnsiChar und Char

  Alt 5. Sep 2016, 16:21
Warum über die Länge des Strings laufen, wenn man das Array verarbeitet?

War eher das gemeint?
for y := 1 to SizeOf(c) do c[y] := 23 xor c[y]; Nur, da c absolut an s liegt und s irgendwas zwischen 1 und 255 Zeichen enthalten kann, wäre ein SizeOf(c) nicht wirklich hilfreich, da man ja dann auch Bytes verarbeitet, die im aktuellen String nicht belegt sind.

Also dürfte Length(s) hier schon die sinnvollere Variante sein.
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.166 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Inkompatible Typen: AnsiChar und Char

  Alt 5. Sep 2016, 16:31
Berlin 10.1...

Strings haben WORDs und nicht bytes!
Das gilt auf für Stringlisten!

S := Edit1.Text; Wenn S ein Short ist, wird es vom compiler convertiert...

Also alle Meldungen richtig...
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

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

AW: Inkompatible Typen: AnsiChar und Char

  Alt 5. Sep 2016, 16:39
S := Edit1.Text; Wenn S ein Short ist, wird es vom compiler convertiert... Funktioniert aber nur, wenn sich wirklich nur Ansi im Unicodestring befindet.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.166 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: Inkompatible Typen: AnsiChar und Char

  Alt 5. Sep 2016, 16:46
S := Edit1.Text; Wenn S ein Short ist, wird es vom compiler convertiert... Funktioniert aber nur, wenn sich wirklich nur Ansi im Unicodestring befindet.
Convertiert bedeutet keine Compiler-Fehlermeldung... "nur ne Warnung"... Vom Inhalt hat keiner gesprochen!
  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 15:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz