Mitenkäs nyt sainkaan annettua taulukon funktioon c :llal? Eli tekisin mainiin taulukon ja funktiolla sitten sorvaisin siitä mitä haluan.
Joku osoitin tsydeemihän se oli..
Joku osoitin tsydeemihän se oli..
Turvaa tilisi vahvistamalla puhelinnumerosi. Voit silloin palauttaa unohtuneen salasanan tekstiviestillä.
Näihin keskusteluihin ei ole vielä vastattu. Ole ensimmäinen.
Vastaukset 8
Vanhimmat
>Joku osoitin tsydeemihän se oli..
Niinhän se on. Taulukkomuuttuja on itseasiassa osoitin ja sen siirtäminen parametrina fuktiokutsussa riittää.
esimerkin? ihan semmonen lyhyt vain...
vaikka tyyliin taulukko missä 5 alkiota ja lasketaan alkiot yhteen funktiossa ja palautetaan vaikka summa. Ja jotain taulukon manipulointia vaikka funktiossa. Se olisikin jo täydellinen selonteko. :)
ehkäpä näin, en kerkeä nyt testaamaan.
long funktio(int num)
{
long anum=0;
for(int i=0; i
Ei taida mennä ihan noin vaan declaroinnissa pitää sanoa että parametri on int-pointteri eikä pelkkä int.
siis joko:
long funktio(int num[])
tai:
long funktio(int *num)
Jos mainissa on esim
int numbers[] = {1,2,3,4,5,6,7,8};
long summa;
niin funktiota kutsutaan
summa = funktio (numbers);
Myöskään sizeof ei toimi tuossa oikein koska taulukko on funktion kannalta external.
Eli pitää tehdä näin:
long funktio(int *num, int maara)
{
long anum=0;
for(int i=0; i
C :ssa on mukana standardikirjasto, josta löytyy rakenteet tuota varten. Esimerkkinä vector. Yleensä kannattaa käyttää noita, ei tartte sitten itte miettiä muistinhallintaa yms.
esim:
#include
void f(std::vector const& v);
int main()
{
' std::vector v;
' f(v);
' ...
}
Tarkoitin tietysti seuraavaa:
void f(std::vector& v);
jees. aukes näillä esimerkeillä.