24. april 2010 - 17:42Der er
5 kommentarer og 1 løsning
C - hukommelsesforbrug for parametre i en funktion
Hejsa :-)
Er i gang med at skrive et filter, der skal simulere rumklang. Det betyder imidlertid at jeg kan ende med at skulle bruge et kæmpe stort array som input parameter. Hele programmet skal køre på en DSP, hvorfor hukommelsen derfor er begrænset. Mit spørgsmål er måske simpelt, men lyder således: når jeg kalder min funktion, hvad sker der så rent hukommelsesmæssigt med mit array? Bliver det kopieret, så min funktion så at sige har sin egen version af array'et, det kan arbejde med, eller forbliver det kun en version af array'et?
Jeg har tænkt på pointer løsningen, og har faktisk allerede implementeret den halvt :-) Mit spørgsmål var egentlig ikke så meget på hvad en løsning kunne være, men mere på om DSP'en kopierer array'et, hvis man ikke bruger en pointer.
Men tak for forslagene. Det bekræfter, at mit brug af pointerer ikke er helt ved siden af :-)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.