Wyprowadzenie wyniku z funkcji w postaci wskaźnika

0

Cześć, mam takie pytanie dotyczące wskaźnikówL
Otóż mam funkcję, która zwraca dany argument powiedzmy x.
W funkcji tej jest pętla, do której wprowadziłem licznik powiedzmy u, który zlicza mi ilość wykonania tej pętli.
Chciałbym teraz przekazać do głownego programu main zarówno wynik x jak i liczbę powtórzeń pętli u - przeszukując internet znalazłem informacje, że 'u' najlepiej przekazać w postaci wskaźnika tylko teraz nie wiem jak zmodyfikować moją funkcję oraz jej wywołanie w mainie zeby to dzialalo:
Przedstawiam uproszczony schemat problemu(funkcję wymyślilem, dlatego taka łatwa):

 float fun(float a, float b, int n)
{int i, u=0;
float c;
for(i=0;i<n;i++)
{c=a*b;
u++;
}
return c;
}

Byłbym ogromnie wdzięczny gdyby na przykładzie takiej prostej funkcji, ktoś pokazał mi jak zmienic funkcję fun, żeby wyprowadzić u w postaci wskaźnika i jak odczytać wartość u w main,
Z góry dzięki
Pozdrawiam :)

1

O tak:

void fun(int *ptr) {
  *ptr = 2;
}

int main() {
  int a = 0;
  printf("%d\n", a);

  fun(&a);

  printf("%d\n", a);
  return 0;
}

http://ideone.com/U4X4j

0

hmm..dzięki za szybką odpowiedz, ale w przypadku funkcji, która dodatkowo zwraca inny niezalezny argument nie bardzo wiem jak licznik 'u' (zliczający ilość pętli) doprowadzić do postaci wskaźnikowej i w jaki sposób umieścic to w argumentach funkcji, zeby potem móc odpalić funkcję w sposób
y=fun(a, b, n, *ptr) ??

0

Ok - już wiem co robiłem źle - wszystko jasne:) - Dzięki wielkie za pomoc

1 użytkowników online, w tym zalogowanych: 0, gości: 1