Tämä voi olla tyhmä kysymys, mutta miten C :ssa saa taulukon arvot tuotua aliohjelmasta pääohjelmaan eli mainiin? Taulukolla on dynaaminen varaus.
Arvot mainiin
Tyhmä kuin saapas
3329
0Äänestä
Muut lukivat myös
Odottaa vastausta
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 3
Vanhimmat
No ihan helposti, esim:
void main()
{
int *taulukko;
taulukko = esimerkkifunktio();
// tee jotain tällä taulukolla
// vapauta varattu muistitila kun et enää tarvitse taulukkoa
delete [] taulukko;
}
int *esimerkkifunktio()
{
int *taulukko;
// luo integer taulukko tuhannelle luvulle dynaamisesti
taulukko = new int[1000];
// alusta tässä taulukko jotenkin (jätän pois)
// palauta taulukko funktion kutsujalle
return taulukko;
}
Noin siis periaatteessa. Tarkistukset sun muut tuosta jäi pois.
Huomattavasti parempi idea on tutustua Standard Template Libraryn (STL) tarjoamiin säilöluokkiin. Nämä osaavat huolehtia muistinvarauksesta ja voit keskittyä oleelliseen.
STL:lää esim täällä:
http://mureakuha.com/artikkelit/11
lisää löytyy googlella ;)
Hyvä, kiitosta paljon sain homman toimimaan.
Mutta nyt jatkokysymyksenä, miten saa kaksi arvoa mainiin? Eli taulukko ja muuttuja samasta aliohjelmasta.
kokeile tätä
void jatkoa (taulukkosi::muuttujasi)
{
}