vad betyder denna kod av pekare
char string [] = "Computer";
char *ptr = string;
Så som jag fattar det så först deklarerar man en sträng array och initierar computer sedan skapar man en pekare som ska peka på strängen som i det här fallet är ''computer''?
*ptr = *ptr + 2; här antar jag att man ska hoppa 2 steg fram på första index på det som ptr pekar på, vilket är c
ptr = ptr + 2; Det här förstår jag inte riktigt
printf("%c" , *ptr);
ptr--; Här hoppar man ett steg bak i index, resterande förstår jag inte så bra
printf("%c" , *ptr);
ptr = string;
printf("%c" , *ptr);
Didar skrev:char string [] = "Computer";
char *ptr = string;
Så som jag fattar det så först deklarerar man en sträng array och initierar computer sedan skapar man en pekare som ska peka på strängen som i det här fallet är ''computer''?
Ja.
*ptr = *ptr + 2; här antar jag att man ska hoppa 2 steg fram på första index på det som ptr pekar på, vilket är c
Det som ptr pekar på, dvs string[0], ökas med 2.
ptr = ptr + 2; Det här förstår jag inte riktigt
ptr ökas med 2 och pekar därmed på string[2].
printf("%c" , *ptr);
ptr--; Här hoppar man ett steg bak i index
Ja, och ptr pekar därmed på string[1].
Lindehaven skrev:Didar skrev:char string [] = "Computer";
char *ptr = string;
Så som jag fattar det så först deklarerar man en sträng array och initierar computer sedan skapar man en pekare som ska peka på strängen som i det här fallet är ''computer''?
Ja.
*ptr = *ptr + 2; här antar jag att man ska hoppa 2 steg fram på första index på det som ptr pekar på, vilket är c
Det som ptr pekar på, dvs string[0], ökas med 2.
ptr = ptr + 2; Det här förstår jag inte riktigt
ptr ökas med 2 och pekar därmed på string[2].
printf("%c" , *ptr);
ptr--; Här hoppar man ett steg bak i index
Ja, och ptr pekar därmed på string[1].
tack för svar :)