Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (WinAPI, Konsole) » funktionen

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
18.10.2004, 21:15 Uhr
~musterman
Gast


hallo !

ich möchte werte von funktion zu funktion weitergeben.


C++:
int e,v;

void eingabe ()
{
      cin>> e;
}

void verarbeitung ()
{
      v=e+e
}

void ausgabe ()
{
     cout<< v;
}

void main (void)
{
     eingabe();
     verarbeitung();
     ausgabe();
}



mhh in den klammern kann man glaub einen wert übergeben nur wie?
find in dem doofen buch leider nix. parameter übergaber per adresse ist es sowas?
klingt nur so kompliziert.

naja mal schauen danke schonmal einfach code beartbeiten glaub erkähren kann ich ihn mir
dann selber danke schonmal im voraus


Bearbeitung:

Bitte an die Codetags denken, danke


Dieser Post wurde am 18.10.2004 um 21:26 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
18.10.2004, 21:25 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


hi, erstmal heißt es


C++:
int main(void)
{
}



ansonsten musst du nur die Variablendefinition in die funktionsklammer schreiben, also so:


C++:
void funktion(int param1)
{
}



wenn du den wert wieder haben willst, musst du z.b


C++:
int funktion(int param1)
{
  return param1;
}



schreiben, das liefert dir wieder den wert der variablen param1 von der funktion zurück.

in deinem beispiel sähe es dann so aus:


C++:
int eingabe ()
{
  int e;
  cin >> e;
  return e;
}

int verarbeitung (int e)
{
  return e+e;
}

void ausgabe (int v)
{
  cout<< v;
}

int main (void)
{
  int e,v;
  e = eingabe();
  v = verarbeitung(e);
  ausgabe(v);

  return 0;
}



oder schöner:


C++:
void eingabe (int *e)
{
  cin >> *e;
}

void verarbeitung (int e, int *v)
{
  *v = e+e;
}

void ausgabe (int v)
{
  cout<< v;
}

int main (void)
{
  int e,v;
  eingabe(&e);
  verarbeitung(e,&v);
  ausgabe(v);

  return 0;
}


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
18.10.2004, 21:33 Uhr
Guybrush Threepwood
Gefürchteter Pirat
(Operator)



Zitat von FloSoft:
hi, erstmal heißt es


C++:
int main(void)
{
}





C++:
int main()
{
}


:p
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
18.10.2004, 22:06 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


naja 100%ig korrekt ist die variante


C++:
int main(void)



da () nicht gleich ("nichts") ist
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
18.10.2004, 23:32 Uhr
~mustern
Gast


danke euch

ich glaub ich nehm die pointer variante,muss mich
ja dran gewöhnen. ist auch nen schönes anschauliches
beispiel, besser als in büchern.

gibt es irgendwo ne sammlung wo steht welche header was für funktionen hat?
man hat ne idee und dann? woher weiss man welche einem was bietet, c++
is ein wenig umfangreicher als andere sprachen.

gibt es nen gutes buch oder ne site dafür?
ne gsammt referenz is schwer zu finden.

fragen über fragen. hab leider erst 2 bücher, die erklähren das alles
mögliche. die stellen einige header vor für ihre beispiele, danach
schlauer is man aber nicht grad.

danke nochmal für weitere antworten
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
19.10.2004, 12:33 Uhr
invalid_username




Zitat von FloSoft:
naja 100%ig korrekt ist die variante


C++:
int main(void)



da () nicht gleich ("nichts") ist

echt?? denke das void ist nur ein überbleibsel aus c-zeiten ist ..
womit ich nicht sagen will das die vorbei sind
--
((void)*)0
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
19.10.2004, 13:25 Uhr
(un)wissender
Niveauwart


void ist heutzutage völlig egal.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
19.10.2004, 13:38 Uhr
virtual
Sexiest Bit alive
(Operator)


Ich finde, Ihr macht es Euch zu einfach: Bei einer Deklaration "int f(void)", da sind wir d'Accord.

Aber:
"int f()" ist je nach Sprache unterschiedlich:
1. In C++: Kein Parameter
2. in C89: 0 - N Parameter, dh man kann was übergeben, wenn man will, aber es wird eh nicht ausgewertet


Der kleine aber feine Unterschied ist also:

C++:
int f() {
    return 0;
}

int g(void) {
    return f(4711);
}


Ist verboten in C++, erlaubt in C89.
In C99 gilt das gleiche wie in C89 mit dem Unterschied, daß es als nicht mehr empfohlen eingestuft ist, soweit ich mich erinnere.
--
Gruß, virtual
Quote of the Month
Ich eß' nur was ein Gesicht hat (Creme 21)

Dieser Post wurde am 19.10.2004 um 13:42 Uhr von virtual editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
19.10.2004, 13:56 Uhr
0xdeadbeef
Gott
(Operator)


Der C++-Standard definiert zwei Formen für main, die jeder Compiler erfüllen muss, nämlich:

C++:
int main();
int main(int argc, char *argv[]);


Der C99-Standard dagegen definiert

C++:
int main(void);
int main(int argc, char *argv[]);


Alles andere darf ein Compiler zwar implementieren, muss es aber nicht, also empfiehlt es sich, sich an diese Formen zu halten.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
19.10.2004, 15:34 Uhr
(un)wissender
Niveauwart


Gut zu wissen, Leute, zumindest für C-Programmierer.
--
Wer früher stirbt ist länger tot.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (WinAPI, Konsole) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: