---
title: "Returnera en array"
type: "forum-thread"
url: "https://www.webforum.nu/amne/c-cpp/77266-returnera-en-array"
topic: "C/C++"
topic_url: "https://www.webforum.nu/amne/c-cpp"
author: "pettsson"
published: "2003-05-17T18:47:11.000Z"
updated: "2003-05-17T22:16:25.000Z"
replies: 5
views: 318
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/c-cpp/77266-returnera-en-array"
---

# Returnera en array

## #1 — pettsson, 2003-05-17T18:47Z

Kommer jag inte ihåg hur man gör, och kan inte hitta nån vettig förklaring genom simpel googling, så jag vänder mig än en gång till wF :e Vill alltså returnera en array

```
char Tolka(Spelare Gubbe[], nPos)
{
//massa trams

return Value[3];
}
```

Permalänk: https://www.webforum.nu/p/77266

## #2 — PeW, 2003-05-17T19:05Z

Du kan inte returnera en hel array, eftersom det är en samling data på den lilla lokala stacken som funktionen allokerat. Mao alla variabler som du skapar i en funktion går förlorade när funktionen går ur scope, såvida du inte skapat utrymme dynamiskt för dem, men det är nog inte fallet här ;)

Så: Du skriver en sak i din rubrik och gör en helt annan i din kod... vad är det du vill? Vill du bearbeta en array eller vill du returnera ett värde ut en viss post i arrayen? Ska du bearbeta en array blir det till att ta med den avsedda arrayen in i funktionen via parameterlistan (char \*arr eller char arr\[\]) och sen bearbeta arrayen i funktionen. När funktionen terminerat är din array bearbetad och klar utan att du returnerat den (man arbetar med adressen till den array som fanns innan funktionen anropades). Vill du bara returnera ett värde ur en viss post gäller din kod.

Permalänk: https://www.webforum.nu/p/1051750

## #3 — pettsson, 2003-05-17T20:47Z

Ehum... Lite fel där uppe :OO Det som ska returneras är en char array med 3 element, inte det tredje elementet. Funktionen kommer köras många gånger, och jag tänkte återanvända samma array hela tiden, hur gör jag? var alltså frågan :)

Permalänk: https://www.webforum.nu/p/1051804

## #4 — PeW, 2003-05-17T21:27Z

Ok..

```
/**************
 * ett exempel
 **************/
void foo(Spelare Gubbe[], char *arr, nPos){
  arr[0]='O;
  arr[1]='K';
  arr[2]='\0';
}

int main(){
  Spelare myGubbe[555];
  char enArray[3];
  foo(myGubbe,enArray,555);
  cout << enArray << endl;  //skriver ut "OK"
  return 0;
}
```

Permalänk: https://www.webforum.nu/p/1051827

## #5 — pettsson, 2003-05-17T21:44Z

Ah, perfekt! :D Tackar tackar

Permalänk: https://www.webforum.nu/p/1051836

## #6 — PeW, 2003-05-17T22:16Z

&nbsp; :)

Permalänk: https://www.webforum.nu/p/1051867

---

Tråden på webben: https://www.webforum.nu/amne/c-cpp/77266-returnera-en-array
