werte aus structs übergeben ohne globale variablen
-
#include <stdio.h> struct test { int a; int b; }; main () { eingabe(); ausgabe(); } eingabe() { struct test x; scanf("%d", &x.a); scanf("%d", &x.b); } ausgabe(struct test x) { printf("a:%d b:%d", x.a, x.b); }
also ich versuche die beiden werte die ich in der eingabe funktion eingebe über die ausgabe funktion auszugeben. allerdings darf letztere funktion nicht auf das struct zugreifen, sondern irgendwie muss die eingabe funktion die beiden werte an die ausgabe weiter geben.leider habe ich keine ahnung wie
. ich hoffe ihr versteht was ich meine und könnt mir auf die sprünge helfen.
-
schreib in Eingabe einfach: ausgabe (x);
-
naja problem ist aber die funktion eingabe soll keine weiter funktion aufrufen sondern einen wert zurückgeben, sich beenden und danach soll main die ausgabe aufrufen
-
dann mach:
struct test eingabe () { struct test x; scanf("%d", &x.a); scanf("%d", &x.b); return x; } main () { struct test x = eingabe (); ausgabe (x); return 0; }