Hallo,
heute habe ich beim C-Lernen gelesen, daß Zeiger den Inhalt von Speicherstellen repräsentieren.
Üblicherweise deuten Zeiger auf Speicherstellen, an denen andere Variablen gespeichert sind.
Ich wollte jedoch versuchen, damit den Inhalt von anderen, Systemspeicherstellen auszulesen, also in BASIC:
10 FOR I=1 to 1000
20 PRINT I, PEEK (I)
30 NEXT I
In C habe ich dafür folgende Zeilen geschrieben:
#include <stdio.h>
int *z;
int i;
main ()
{
for(i=1;i<=1000;i++)
{
z=i;
printf("%d\t%d\n",i,*z);
}
}
Leider erhalte ich hier immer "Speicherzugriffsfehler" (während, wenn ich stattdessen z=&i; eingebe, für *z logischerweise (nochmal) der Wert der Variablen i ausgegeben wird).
Hat jemand eine Idee, wie ich mein Ziel erreiche ?
Beste Grüße
heute habe ich beim C-Lernen gelesen, daß Zeiger den Inhalt von Speicherstellen repräsentieren.
Üblicherweise deuten Zeiger auf Speicherstellen, an denen andere Variablen gespeichert sind.
Ich wollte jedoch versuchen, damit den Inhalt von anderen, Systemspeicherstellen auszulesen, also in BASIC:
10 FOR I=1 to 1000
20 PRINT I, PEEK (I)
30 NEXT I
In C habe ich dafür folgende Zeilen geschrieben:
#include <stdio.h>
int *z;
int i;
main ()
{
for(i=1;i<=1000;i++)
{
z=i;
printf("%d\t%d\n",i,*z);
}
}
Leider erhalte ich hier immer "Speicherzugriffsfehler" (während, wenn ich stattdessen z=&i; eingebe, für *z logischerweise (nochmal) der Wert der Variablen i ausgegeben wird).
Hat jemand eine Idee, wie ich mein Ziel erreiche ?
Beste Grüße