AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Funktionen

Ein Thema von Pseudemys Nelsoni · begonnen am 8. Mai 2003 · letzter Beitrag vom 13. Jan 2005
Antwort Antwort
Seite 2 von 3     12 3      
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#11
  Alt 8. Mai 2003, 09:59
Zitat:
welche werte a und b haben hängt davon ab in welcher reihenfolge du deine werte übergibst, dabei wird von links nach rechts gegangen,
dann wirds mir schon ein bisschen klarer ^^


@luckie: wenn das 1. ne function ist, dann jo, kommt hello world

danke für die hilfe ihr 2

achja, 1 noch...wenn ichs so hab:

Delphi-Quellcode:
function add(a, b: Integer): string;
begin
  result := IntToStr(a+b);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  a1, b1, c : Integer;
begin
  a1 := 1;
  b1 := 2;
  c := add(a1, b1);
  ShowMessage(IntToStr(c));
end;
was ist daran falsch?kann ich die zahlen während der function nicht in strings umwandeln? die variablen sind ja integer, die funktion sollte ein strng zurückgeben oder?
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#12
  Alt 8. Mai 2003, 10:03
achso, c müsste in der prozedur ein string sein oder

hmm bekomme bei :

Delphi-Quellcode:
function add(a, b: Integer): string;
begin
  result := IntToStr(a+b);
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  a1, b1: Integer;
  c: string;
begin
  a1 := 1;
  b1 := 2;
  c := add(a1, b1);
  ShowMessage(c);
end;

3 raus obwohl 1+2 (als string) doch 12 ergeben müsste ...hmm
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#13
  Alt 8. Mai 2003, 10:03
Tut sie auch, nur bei der Aussageb mit ShowMessage versuchst du einen String noch mal von einem Integer in einen String umzuwandeln.

Bei dem letzten Code, den ich gepostet habe handelt es sich um eine Prozedur keine Funktion!!! Deswegen habe ich den Parameter mit CallByReference (Schlüsselwort: var) übergeben, damit die Prozedur ihn verändern kann. Ansonsten unterscheide sich ja eine Prozedur von einer Funktion darin, dass sie nichts zurückgibt.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#14
  Alt 8. Mai 2003, 10:04
Zitat von silent:
achso, c müsste in der prozedur ein string sein oder
Das zu dem.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#15
  Alt 8. Mai 2003, 10:10
bei mir im buch gibts

function malZwei(var a: integer): integer // Call by Reference

und

function malZwei(a: integer): integer // Call by Value



als prozdur gibts das also auch, gut zu wissen , thx =) man ich muss das ganze mal komplett lernen bin da schon über nem jahr dran....

kannst du mir noch sagen wieso bei meinem letzten postb 3 statt 12 rauskam?

gruss silent
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#16
  Alt 8. Mai 2003, 10:15
Du addierst doch Integers und wandelst dann das Ergebnis in einen String um.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#17
  Alt 8. Mai 2003, 10:18
wie könnt ichs denn vorher in strings umwandeln und dann addieren?
genauso wie in ner prozedur, also

function....
var var1, var2: string;
begin
var1 := IntToStr(a);
var2 := IntToStr(b);
result := a+b;
end;

so?
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#18
  Alt 8. Mai 2003, 10:20
Zitat von silent:
wie könnt ichs denn vorher in strings umwandeln und dann addieren?
Was willst du jetzt machen?
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#19
  Alt 8. Mai 2003, 10:23
also 2 integers in der function zu einem string umwandeln

weil mir das komisch vorkommt das überall dann variablen vorkommen würden
also:

function irgendwas(a: integer): string
var v1, v2: string;
begin
v1 := IntToStr(a);
v2 := IntToStr(b);
result := a+b;
end;


ist das richtig? *G
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#20
  Alt 8. Mai 2003, 10:26
Delphi-Quellcode:
function(a, b: Integer): String;
begin
  result := IntToStr(a)+IntToStr(b);
end;
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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:57 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