Gå til innhold

Linked list og char-arrays


Anbefalte innlegg

Driver å skriver en liten del av et større program som skal legge innholdet i en linket liste over i ett langt char-array. nodene i den lenkede listen har en string som skal legges inn i den store arrayen i metoden toChar

 

http://pastebin.com/m14066263

 

prøver å sette char* c = toChar(), et annet sted i programmet, men får feilmeldingen warning: initialization makes pointer from integer without a cast

 

får også feilmeldingen om at toChar() returnerer en local variable.

 

Noen som har noen tips for å fikse dette?

Lenke til kommentar
Videoannonse
Annonse
<snip>

prøver å sette char* c = toChar(), et annet sted i programmet, men får feilmeldingen warning: initialization makes pointer from integer without a cast

 

Jeg skjønner ikke hvorfor du får warningen det eneste jeg kan tenkte meg er at "c" ikke er en peker :)

Du kan prøve å sette c til 0 før du kjører funksjonen.

 

får også feilmeldingen om at toChar() returnerer en local variable.

Noen som har noen tips for å fikse dette?

 

Når en funksjon er ferdig kan man ikke lenger bruke lokale variabler fra funksjonen. Siden du returner en peker til "d" (som er en lokal variablen) får du ikke lov til det. Du må heller bruke dynamisk allokere minne hvis du skal gjøre det som du vil.... eventuelt vurdere å bruke std::string.

 

Lykke til

Lenke til kommentar

Det kan også være en uting å returnere en array på den måten, ofte vil du få problemer dersom du bruker mye biblioteker og slikt (du kan ikke free en variabel som er malloc-et i en annen dll)

Heller kopier data inn i et array som gis som et parameter til funksjonen, da slipper du også den lokale variabelen.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...