Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


[C-programmering] Minnesallokering

Postades av 2005-06-20 13:02:57 - Niklas Hultgren, i forum c++, Tråden har 4 Kommentarer och lästs av 1051 personer

Hejsan!

jag vill kunna skapa en array/vector enligt följande:

int i = 10;
char *array[i];


Dock klagar kompilatorn om att värdet i inte är en konstant. Kan man gå runt detta problem med hjälp av minneshantering, typ malloc/calloc?

// Nicke


Svara

Sv: [C-programmering] Minnesallokering

Postades av 2005-06-20 13:41:32 - Per Persson

Japp.

int i = 10;
char **array = (char**) malloc(i * sizeof(char*));


Svara

Sv: [C-programmering] Minnesallokering

Postades av 2005-06-20 13:42:14 - Niklas Jansson

Ja, det är just det som malloc är till för.

Kommer inte ihåg gamla C-syntaxen (om du har möjlighet är det väsentligt mycket bättre att använda C++ istället, coh där köra med new resp. delete), men något i den här stilen är det:

int i = 10;
char *array;
int *intarray;

array=(char*)malloc(i);
intarray=(int *)malloc(i*sizeof(int));

free(array);
free(intarray);


Observera att malloc ger ifrån sig en void-array eller char-array eller något i den stilen, som du måste casta rätt, och sen vill den ha storleken i antalet byte (byte definierat som storleken av en char).


Svara

Sv:[C-programmering] Minnesallokering

Postades av 2005-06-20 14:15:54 - Niklas Hultgren

Så char **array kan alltså ses som en array/vektor men som i realiteten är deklarerad som en pekare till en pekare? Eller hur kan man bäst beskriva läget?

// nicke


Svara

Sv: [C-programmering] Minnesallokering

Postades av 2005-06-20 14:53:45 - Per Persson

Ja, char ** kan ses som antingen en array med pekare till char, eller en pekare till en pekare till char. Det senare är ju den mer direkta tolkningen.


Svara

Nyligen

  • 21:41 Automotive Services UK
  • 20:44 Erfarenhet av CBD-olja mot sömnpro
  • 12:13 Sex Dolls for Sale
  • 19:42 Online Casinos for Haitian Players
  • 19:38 Rekommendera något intressant
  • 19:13 Международная перевозка грузов
  • 00:01 DL Van Tuning | Exclusive Body Kit
  • 12:08 Indian casino

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 879
27 965
271 774
560
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies