05. oktober 2005 - 11:33
Der er
7 kommentarer og 1 løsning
Konvertere mellem int og char*
Jeg har et array, PUNKT punkter[85], hvor PUNKT er defineret ved følgende struct: typedef struct punkt_{ float x, y; char *navn; } PUNKT; for at initialisere disse structs benytter jeg en for-løkke hvor tælleren i løkken, som er en int, skal konverteres til en char* og indsættes i navn. for(int i = 0; i<85;i++){ punkter[i].navn = konverter_til_char*(i); } men hvordan konverterer jeg i il en char* ?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
05. oktober 2005 - 11:41
#1
for(int i = 0; i<85;i++){ punkter[i].navn = (char*)malloc(3); sprintf(punkter[i].navn,"%d",i); } må være en mulighed
05. oktober 2005 - 11:41
#2
husk at få deallokeret igen lav evt. pointer om til et array for at undgå allokering og deallokering
05. oktober 2005 - 11:51
#3
hvordan ved jeg hvor "langt" arrayet skal være. Afhænger dette af hvor højt et tal jeg skal indsætte ?
05. oktober 2005 - 11:57
#4
ja 85 = 2 cifre 2 cifre + 1 terminerend e0 byte = 3 char
05. oktober 2005 - 12:02
#5
ok. tak for hjælpen. Gider du skrive et svar
05. oktober 2005 - 12:05
#6
svar
05. oktober 2005 - 12:05
#7
og overvej som sagt et array fremfor en pointer - det vil være meget nemmere
05. oktober 2005 - 12:32
#8
ja, har allerede ændret det :-)
Kurser inden for grundlæggende programmering