Wo ist das Problem bei dieser einfachen Funktion?

Diskutiere Wo ist das Problem bei dieser einfachen Funktion? im C/C++ Forum; Es ist ein script von der Uni und ich bin auch nicht so lange dabei. Die Grundlagen sollte ich anhand solcher Aufgaben lernen. Ich würde mich über...

  1. ElMadridano
    ElMadridano Neues Mitglied
    Es ist ein script von der Uni und ich bin auch nicht so lange dabei. Die Grundlagen sollte ich anhand solcher Aufgaben lernen. Ich würde mich über Tipps freuen.
     
  2. temi
    temi Aktives Mitglied
    Man kann keine Grundlagen lernen, indem man Aufgaben löst, von deren Grundlagen man keine Ahnung hat und dann versucht sich eine fertige Lösung zu beschaffen.

    Irgendwo in dem Script muss ja etwas über Zeiger, Definition und Deklaration von Zeigervariablen, C-Arrays und Zeigerarithmetik stehen.
     
  3. ElMadridano
    ElMadridano Neues Mitglied
    Die Sachen stehen da drin, aber nichts mit C-Arrays. Über Arrrays und Pointer kannte ich mich schon etwas aus, nur wusste ich nicht wie ich die beiden Sachen verbinden soll. Aber durch eigene Recherche hab ich rausgefunden, was " IntZeiger = IntArray" bedeutet. Nämlich wird dem 1.Feld im Array dieser Pointer zugewiesen. Und wenn man dann den 2.Feld im Array haben möchte muss man IntZeiger++ schreiben und für jede weitere dann IntZeiger=IntArrray +2 oder +3 und so weiter.
    Jetzt weiß ich aber nicht, wie ich in den Pointer was Reinschreiben, welches dann vom Array übernommen wird.
    Tipps reichen mir schon, darüber würde ich mich freuen,
    Danke
     
  4. mrBrown
    mrBrown Super-Moderator Mitarbeiter
    Nein.
    IntZeiger wird die Adresse des Arrays (was gleichzeitig die Adresse des ersten Elements ist) zugewiesen.
    Das Array wird da nicht verändert.
     
  5. ElMadridano
    ElMadridano Neues Mitglied
    Jawoll alles klar danke, Aufgabe gelöst
     
  6. mrBrown
    mrBrown Super-Moderator Mitarbeiter
    Lässt du uns an der Lösung teilhaben? :)
     
  7. ElMadridano
    ElMadridano Neues Mitglied
    Oh ja stimmt, wie unhöflich von mir
    Code (C):
    int main()
    {
        int *IntZeiger=NULL;
        int IntArray[5];

        IntZeiger=IntArray;
        *IntZeiger=5;
        *(IntZeiger+1)=4;
        printf("Wert im Feld 1 ist %i\n", IntArray[0]);
        printf("Wert im Feld 2 ist %i\n", IntArray[1]);
    }
    Über Meinungen und weitere Tipps würde ich mich freuen,
    Danke
     
  8. mrBrown
    mrBrown Super-Moderator Mitarbeiter
    Du kannst auch beim Zugriff über den Pointer die Schreibweise mit Klammern nutzen: IntZeiger[0]=5;
     
  9. ElMadridano
    ElMadridano Neues Mitglied
    Geiler Tipp Danke
    Code (C):
        int *IntZeiger=NULL;
        int IntArray[5];
        IntZeiger=IntArray;
        IntZeiger[0]=5;
        IntZeiger[1]=4;
        printf("Wert im Feld 1 ist %i\n", IntArray[0]);
        printf("Wert im Feld 2 ist %i\n", IntArray[1]);
     
  10. mihe7
    mihe7 Bekanntes Mitglied
  11. Hinweis: Du möchtest Java lernen? Vielleicht hilft dir dieser Kurs hier weiter. Sichere dir hier den Zugriff auf umfangreiches Java-Know How und starte richtig durch!
Die Seite wird geladen...

Wo ist das Problem bei dieser einfachen Funktion? - Ähnliche Themen

"Tetris" - Problem bei der Grafik
"Tetris" - Problem bei der Grafik im Forum Java Basics - Anfänger-Themen
NFC Reader und JavaFx Problem -> threads?
NFC Reader und JavaFx Problem -> threads? im Forum Java Basics - Anfänger-Themen
Salesman Problem - Bruteforce Algorithmus
Salesman Problem - Bruteforce Algorithmus im Forum Allgemeine Java-Themen
Immer mal wieder line ending Probleme
Immer mal wieder line ending Probleme im Forum Softwareentwicklung
Hamster Simulator Problem
Hamster Simulator Problem im Forum Java Basics - Anfänger-Themen
Thema: Wo ist das Problem bei dieser einfachen Funktion?