Hej!
Håller just nu på att börja plugga lite c och har egentligen inte kommit in på avsnittet pekare än, men min bok använder följande exempel:
Kod:
#include <stdio.h>
#define TIMMAR 8
int main()
{
int hoursalary = -1;
int *hs = &hoursalary;
char namn[20];
printf("What's your name?");
scanf("%19s", namn);
printf("Hello %s! \n", namn);
puts("How much do you earn in an hour?");
scanf("%i", &hoursalary);
hoursalary = hoursalary * TIMMAR;
printf("Daily salary is %ikr", hoursalary);
printf("%i\n", *hs);
return 0;
}
Skulle någon kunna förklara varför han använder en pekare i detta exempel? (allt fetmarkerat)
Har han någon speciell anledning, eller är det bara för att mjuka upp oss inför pekare-avsnittet längre fram?
Min tanke är att man i raderna
Kod:
int *hs = &hoursalary;
Kod:
scanf("%i", &hoursalary);
lika gärna bara skulle kunna skippa "int *hs = &hoursalary;" och bara köra på
Kod:
scanf("%i", hoursalary);
dvs skippa allt jox med minnesadresser och pekare och bara lagra värdet som matas in via scanf direkt in i hoursalary-variabeln.
Har jag fel? Om så är fallet, varför?