QueryCoinsPerUnits()
********************


QueryCoinsPerUnit()
===================


FUNKTION
========

   int *QueryCoinsPerUnits();


DEFINIERT IN
============

   /std/unit.c


ARGUMENTE
=========

   keine


BESCHREIBUNG
============

   Liefert das Wertverhaeltnis fuer die Einheiten zurueck.


RUeCKGABEWERT
=============

   Ein Array von zwei Zahlen. Die erste Zahl ist der Wert der in der
   zweiten Zahl angegebenen Einheiten.


BEISPIELE
=========

   Steht im Unit-Objekt folgende Wertzuweisung:

     SetCoinsPerUnits(7,2);

   so liefert QueryCoinsPerUnits() als Ergebnis ({7, 2}).


SIEHE AUCH
==========

   SetCoinsPerUnits(), SetGramsPerUnits(), QueryGramsPerUnit(),
   /std/unit.c

Last modified: Wed May 8 10:22:02 1996 by Wargon
