Hogyan tudom megcsinálni C++-ban, amit pascalban valahogy úgy írnék, mint alább?
procedure valami;
var
i, j: integer;
szo: array[0..8] of string;
szam: array[0..8] of single;
begin
for i:=0 to 8 do val(szo[i],szam[i],j);
for i:=0 to 8 do str(szam[i]:6:6, szo[i]);
end;
{
Szóval, egy szövegtömb elemeit tizedestörtté alakítva bemásolja egy számtömbbe, és ugyanezt visszafelé.
A lényeg a két átváltás, a többit kiügyeskedem valahogy. A legegyszerűbb megoldás kéne, nem baj, ha nem bolondbiztos. Az jó volna, ha szintén 6 tizedesre csonkolná a szöveget, de ha nincs szimpla beépített módszer, nem muszáj, ez a része nem tűnik vészesnek.
}
Köszönöm:
tabaki@uw.hu
+ Tényleg sok érdekességet találtam, ezek szerint már csak az a két dolog hiányzik (val(), str()), amelyek miatt a kérdést feltettem.
Ha lehet, kérek még válaszokat!
Hát, ez nem jött össze... Az egy nap alatt magamra szedett tudásomban megerősített a kapott olvasnivaló, csak továbblépni nem segített. Pascalból már kábé ezerszer ennyit tudok, ez még aligha ad dicsekvésre okot, mert jóindulattal nevezhető elégséges szintnek, de arra már elég, hogy a ház körül elmatassak vele. Szívesen próbálkoznék viszont a C++-szal is, ha már annyira dicsérik, jót tenne az önbecsülésemnek, ha az is menne ezen a nívón. Viszont nemigen ismerem ki magamat a könyvtáraiban. Ha belenézek a header-fájlokba, az nekem akkora tohuvabohu, hogy fogalmam sincs, hogy hol keressem az engem érdeklő rutinokat. Úgyhogy lehet, hogy valóban megvan más néven a str() és a val(), csak éppen honnét a bánatból hívjam be őket?
A kérdésre okot adó problémát egyébként jól-rosszul megoldottam egy nyögvenyelős sajátkezű funkcióval, de az általános esetre nem használható. Na mindegy, a programom döcög valahogy, úgyis csak én használom, meg aztán ott a tuti pascal-változatom...
A saját búvárkodásom alapján inkább az atof() / fcvt() páros tűnik ígéretesnek (lebegőpontosról lévén szó), ezek is benne vannak a <stdlib>-ben. Bár azt nem értem egészen a leírás alapján, hogy az utóbbi hogyan adja vissza a stringet, de menet közben majd apránként rájövök, meg most már tudom, merre küldjem a guglit példákért. Köszi a linket, ez még hasznos lesz.
Egyelőre asszem ennyi, köszönöm a válaszokat.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!