Malloc

Tags:    c++

<< < 12 > >>
Hej

Jeg er ved at lege lidt med malloc og er kommet frem til denne kode:
Fold kodeboks ind/udKode 

Denne kode mener jeg, skulle gerne skrive 100, med mindre der sker en fejl under allokering af hukommelse, eller er jeg helt galt på den?? Så hvor er det, det går galt for mig ??

.edit: Det skal lige tilføjes at den skriver 4



Indlæg senest redigeret d. 17.02.2007 14:36 af Bruger #3789
14 svar postet i denne tråd vises herunder
3 indlæg har modtaget i alt 7 karma
Sorter efter stemmer Sorter efter dato
Med de fleste nyere compilere på de fleste platforme er int og long det samme.



Bertel: Jeg synes ikke jeg kan få uint64_t til at fungere, hvis jeg udskriver sizeof() skriver den 8, men den kan stadig ikke gå over 2.000.000.000, det samme sker med en unsigned int, det virker meget mærkeligt. Har du en løsning på det ?



Hvis man et sted i sin kode skriver et heltal er det automatisk en int også selv tallet fylder for meget til at være en int.

Løsningen er at skrive LL efter tallet for at fortælle at det er et long long tal eller int64_t eller uint64_t:

Fold kodeboks ind/udKode 




Tak for hjælpen begge to.

Bertel: Jeg fandt ud af at, man for at kunne bruge uint64_t skal udskrive den med %I64u, det skal lige siges at jeg programmerer C, så jeg bruger printf.



<< < 12 > >>
t