Free Pascal Fehler beim kompilieren.

...komplette Frage anzeigen

3 Antworten

Du möchtest offenbar eine zusammengesetzte (!) Zeichenkette erzeugen...

  • Was kennst Du denn schon für Operatoren, um mehrere Zeichenketten zusammenzusetzen (zu "verketten")?
  • Das FloatToString ist sinnlos (überflüssig), weil der Java-Compiler an der Stelle intelligent genug ist, den float selbständig zu einem String zu konvertieren, wenn er ihn mit einem String verketten soll. Aber OHNE den RICHTIGEN Verkettungs-Operator ist es auch dem intelligentesten Java-Compiler unmöglich zu orakeln, DASS Du eventuell in Deinem Kopf den Hintergedanken des Verkettens gehabt haben könntest!

Wobei: Dafür gibt's ja Frageportale, wo man andere Menschen fragen kann...

Aber zum Punkt: Wie verkettet man mehrere Strings?

String deine_aufgabe = "Ich " ?? "bin " ?? "ein " ?? "Programmierer.";

Was mußt Du anstelle der Fragezeichen für einen Operator einsetzen?

vieleicht and?

0
@derneuee

nach dem ich versucht habe es zu korrigieren soweit bis ich es verstanden habe kam das raus.

Edit1.text:=(((Zahl1)and (Art1)and (Zahl2)));

unit1.pas(77,24) Error: Operator is not overloaded: "Real" and "AnsiString"

Ich bin echt gut :)

Ps:Zahl1,Zahl2:Real; und Art:String; wenn das was hilft

0
@derneuee

Tja: Neee, nicht?

Wie könnten wir denn herauskriegen, welche Operatoren zur Verknüpfung von Strings verwendbar sind?

(Außer zu sowas primitivem wie dem Lesen der anderen Antworten greifen zu müssen...)

Hast Du schon mal was von der Pascal-Sprach-Referenz gehört? http://www.freepascal.org/docs-html/ref/ref.html

Gibt es da was über "Operatoren" zur Verkettung von "Strings" zu finden?

0

FloatToStr(Zahl1)

hat nur ein Argument - nicht mehrere

http://www.freepascal.org/docs-html/rtl/sysutils/floattostr.html

Da musst Du den Text wohl anders zerlegen.

Kannst du mir es geich sagen was ich ändern muss damit ich auch gelich weiß

0

Verstehe nicht wo da der fehler ist

0
@derneuee

Du willst 3 Werte übergeben, es geht aber nur mit einem.

0
@MistrF

Edit1.text:=FloatToStr(((Zahl1) (Art1) (Zahl2)));

geht nicht, er will die Klammer zu nach Zahl1 da es eben nur

FloatToStr(Zahl1)

gibt.

Wenn Art1 ein Zeichen ist, dann wäre

Edit1.text:=FloatToStr(Zahl1) + Art1+ FloatToStr(Zahl2);

möglich. Wobei ich mir jetzt bei dem Punkt in Edit1.text nicht so sicher bin - aber ich habe die Namenskonventionen von Freepascal nicht im Kopf.

0

Wehe du zeigst uns den code, dann könnte man dir ja ausversehen helfen.

wie meinst du dass dass ist der code oder willst du gleich das ganze

0

Was möchtest Du wissen?