@ProgrammeringElev: lottoRad[0]
refererar till det första elementet i lottoRad
-arrayen, och eftersom det inte är pekare du lagrar i arrayen utan struct-instanser så är det lottoRad[0].LottoVektor
som är korrekt.
Däremot kan du inte tilldela en array på det sättet, det fungerar endast när du deklarerar arrayen. Om du vill tilldela en array så får du antingen tilldela varje element var för sig med t.ex. en loop, eller använda memcpy
. D.v.s.:
int arr[] = {1, 2, 3}; // ok, deklaration
arr = {1, 2, 3}; // inte ok, tilldelning till hela arrayen
arr[0] = 1; // ok, tilldelning till första elementet
// ok, tilldelning av alla element med en loop
for (int i = 0; i < 3; ++i) {
arr[i] = i + 1;
}
// ok, kopiera arr till arr2 med memcpy.
int arr2[3];
memcpy(arr2, arr, sizeof(arr));
Med memcpy
är det lätt att skjuta sig själv i foten om man inte har koll på vad man gör, så det kanske är bäst att undvika memcpy
tills du kommit lite längre i dina studier.
tack så mycket för hjälp, jag tror nu jag får någonting i mitt huvud.
Jag har gått igenom din kod nu och ska försöka fixa allt imorn