Nieuws:

We zijn er weer.

Na lange tijd van afwezigheid zijn we er weer  :laugh:
We hebben alle wachtwoorden gereset, je oude wachtwoord werkt niet meer.Je moet via het "wachtwoord vergeten"-linkje je wachtwoord resetten. Je krijgt hiervoor een mailtje op het adres dat je bij ons geregistreerd hebt.

De komende tijd zijn we nog druk bezig om de rest van de site op te bouwen, dus het kan zijn dat sommige onderdelen (tijdelijk) niet werken.

Welkom, Gast. Alsjeblieft inloggen of registreren.
Heb je de activerings-mail niet ontvangen?

Auteur Topic: [Opgelost][C++] Vastgelegde reeks geheugenlocaties, hoe waarden eruithalen?  (gelezen 805 keer)

Offline Joshua822

  • Documentatieteam
  • Steunpunt: Nee
Hallo allemaal.

Ik kan mijn vraag niet heel goed uitleggen. Ik heb met de new operator dus een vaste blok geheugen gekregen voor een reeks van 5 integer waarden. Nu wil ik deze waarden kunnen wijzigen en dan naar het scherm schrijven. Ik kan het niet echt goed uitleggen, maar ik denk dat mijn code voor de rest genoeg zegt:
#include <iostream>
#include <new>

using namespace std;

int main ()
{
    int * reeks = new ( nothrow) int [ 5 ], n;
    if ( reeks == 0 )
    {
         cout << "Error: kon geen geheugen toewijzen aan variabel reeks." << endl;
         cin.get ();
         return 1;
    }
    *reeks = 2;
    for ( n = 0; n < 5; n++ )
    {
        reeks [ n ] = reeks [ n - 1 ] * 2;
        cout << reeks << ", " << endl;
    }
    cin.get ();
    delete [ ] reeks;
    return 0;
}

Ik hoop dat iemand me snel in de juiste richting point ;)

Alvast bedankt.

« Laatst bewerkt op: 2009/09/26, 21:55:05 door Joshua822 »

Offline idefix

  • Lid
  • Steunpunt: Nee
Re: [C++] Vastgelegde reeks geheugenlocaties, hoe waarden eruithalen?
« Reactie #1 Gepost op: 2009/09/26, 20:27:34 »
ik kan je niet helpen met deze vraag, maar je hebt een pb.
Support bacteria. They're the only culture some people have.

Offline Joshua822

  • Documentatieteam
  • Steunpunt: Nee
Re: [C++] Vastgelegde reeks geheugenlocaties, hoe waarden eruithalen?
« Reactie #2 Gepost op: 2009/09/26, 21:54:43 »
Ik heb de oplossing te pakken: je moet ze gewoon behandelen als arrays!

#include <iostream>
#include <new>

using namespace std;

int main ()
{
    int * reeks = new ( nothrow ) int [ 5 ], n;
    if ( reeks == 0 )
    {
         cout << "Error: kon geen geheugen toewijzen aan variabel reeks." << endl;
         cin.get ();
         return 1;
    }
    reeks [ 0 ] = 2;
    cout << reeks [ 0 ] << ", " << endl;
    for ( n = 1; n < 5; n++ )
    {
        reeks [ n ] = reeks [ n - 1 ] * 2;
        cout << reeks [ n ] << ", " << endl;
    }
    cin.get ();
    delete [ ] reeks;
    return 0;
}

Misschien kan ik het programma nog wat kleiner maken, dat zal ik nog eens bekijken. Maar nu is het opgelost.