JLI Spieleprogrammierung Foren-Übersicht JLI Spieleprogrammierung

 
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen 
 medals.php?sid=392de4f21b37d9e976ff02ce2f9d4816Medaillen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Hilfe bei Funktionen

 
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Fragen, Antworten und Kritik
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Leuschi
Mini JLI'ler



Anmeldedatum: 27.09.2006
Beiträge: 5

Medaillen: Keine

BeitragVerfasst am: 17.03.2007, 17:08    Titel: Hilfe bei Funktionen Antworten mit Zitat

hi leute,

bin noch ziemlich neu und habe mal eine frage zu funktionen

beispiel funktion

float test(float)
{
}

so wie ich das verstanden habe, zeigt der erste typ, was die funktion ausgibt...
meine frage jez:
was bedeutet das float in den klammern?

danke!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jones
Senior JLI'ler


Alter: 33
Anmeldedatum: 03.03.2005
Beiträge: 208
Wohnort: Köln
Medaillen: Keine

BeitragVerfasst am: 17.03.2007, 17:14    Titel: Antworten mit Zitat

das float in den Klammern ist der Datentyp der übergeben wird. Hier ein kleines Beispiel:
CPP:
#include <iostream>

using namespace std;

float test(float Parameter);

int main()
{
   cout << test(5.6f) << '\n';
   return 0;
}

float test(float Parameter)
{
   float Ergebnis;
   Ergebnis = Parameter*1.2f;
   return Ergebnis;
}


edit: ich hoffe ich hab keinen fehler gemacht...


Zuletzt bearbeitet von Jones am 17.03.2007, 18:00, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
manu
Super JLI'ler


Alter: 35
Anmeldedatum: 09.03.2006
Beiträge: 327
Wohnort: allgäu (DE)
Medaillen: Keine

BeitragVerfasst am: 17.03.2007, 17:46    Titel: Antworten mit Zitat

Wir hatten hier glaub auch mal ein thema in dem das mal von mehreren sehr ausführlich erklärt wurde...

float F(float param)

Das erste float gibt den Typ des Wertes an, der aus der Funktion heraus mit return zurückgegeben wird. (In dem Fall float)

Das zweite float gibt den Typ des Parameters an, der an die Funktion übergeben wird. (In dem Fall float)

Ein Beispiel dazu poste ich mal nicht, guck einfach nen Post weiter oben.


Zuletzt bearbeitet von manu am 17.03.2007, 17:47, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
DirectXer
Dark JLI'ler



Anmeldedatum: 05.02.2005
Beiträge: 1201
Wohnort: Köln
Medaillen: Keine

BeitragVerfasst am: 17.03.2007, 17:46    Titel: Antworten mit Zitat

Jones hat Folgendes geschrieben:

edit: ich hoffe ich hab keinen fehler gemacht...

eigentlich net, nur das du double und float durcheinander benutzt Razz

also, eine Funktion ist eigentlich eine Unterroutine, ein Arbeitspferd in der Programmierung. Du sprichst es an, gibst ihm ein paar Sachen und wartest bist es zurückkommt und dir genau eine Sache zurückgibt. Das was du ihm gibst, steht beim Aufruf der Funktion in den Klammern. Der Compiler muss aber wissen, was das genau ist, was du ihm in den Klammern übergibst. In deinem Beispiel definierst du mit float function( float ), dass deine FUnktion einen Wert des Typs float in den Klammern erwartet, wenn du sie aufrufst. Nachdem die Funktion beendet wurde und mit return einen wert zurückgibt, ersetzt das Programm quasi den Aufruf durch das was mit return zurückgegeben wurde. Auch hier muss eben der Compiler wissen, was das genau ist, was die funktion zurückgibt. In Jones Beispiel kann man das eigentlich ganz gut sehen:
CPP:
cout << test(5.6f) << '\n';

Hier ruft er die Funktion auf und übergibt ihr den Wert 5.6. Der ist vom Typ float, was in der Deklaration der Funktion angegeben ist:
CPP:
float test(float Parameter);

Die Funktion macht dann etwas mit diesen 5.6 und gibt per return einen Wert zurück:
CPP:
 return Ergebnis;
Dieser Wert ersetzt dann im Programm das "test(5.6f)" mit dem Rückgabewert, der auch vom Typ float ist. Der wird darauf per cout ausgegeben.

Gruß DXer
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    JLI Spieleprogrammierung Foren-Übersicht -> Fragen, Antworten und Kritik Alle Zeiten sind GMT
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2005 phpBB Group
Deutsche Übersetzung von phpBB.de

Impressum