ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
428
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
  1. #1
    Avatar von sand13r
    sand13r ist offline Mitglied Gold
    Registriert seit
    Oct 2006
    Beiträge
    101
    Hiho liebe Freunde der Sonne,

    ich hab schonwieder mal ein Problemchen
    Und zwar hab ich ein Programm das mir im laufe der Zeit 4 double Variablen vollschreibt bzw hochinkrementiert
    und ein 2tes Programm wo ich ein File schreiben muss wo ich die Werte aus dem anderen Programm wissen sollte. Kann mir jemand einen Tipp geben wie ich das angehen könnte ?

    Wäre wirklich super

    en schönen Abend noch

    greetz sand13r
     
    #include<MCoder.h>
    #include<iostream>
    #include<conio.h>

    int main()
    {
    MCoder *pmcoder;

    cout<<"Please ask your Question!!"<<endl;
    cin>>pmcoder->QuestionString;

    cout<<"Answer is:" <<pmcoder->GetAnswer(pmcoder->QuestionString)<<endl;

    getch();
    return 0;
    }

  2. #2
    ITiBoI ist offline Mitglied Bronze
    Registriert seit
    Jun 2007
    Beiträge
    28
    So was hab ich mich auch schon mal gefragt, habs aber nie gebraucht. Gedanklich ist mir folgende Möglichkeit mal eingefallen (hab sie nie ausprobiert und kann auch keine Garantie geben, dass es funktioniert):
    Du legst in einem Programm die Variablen fest (vielleicht auf dem Heap; denn ansonsten wäre die Variable beim Programm-Ende ja futsch), und startest das zweite Programm mit den Speicherstellen als Argumenten; in dem kannst du dann die dann wieder mit Zeigern wiederverwenden. (Einzige Gefahr; beide Programme greifen gleichzeitig auf die Speicherstelle zu, dann gibts denk ich mal den netten und beliebten Bluescreen, im einfachsten Fall vielleicht nur ne Fehlermeldung)

    Aber wie gesagt: Ich habs nie praktisch ausprobiert! Aber vielleicht bringt dich die Idee ja weiter.

    Aber wieso machst du 2 Programme? Ich würde an deiner Stelle einfach beide Codes kombinieren...
     
    Kein Bild,
    Kein Ton,
    Hier war ich schon.
    Programmierspruch

  3. #3
    Avatar von sand13r
    sand13r ist offline Mitglied Gold
    Registriert seit
    Oct 2006
    Beiträge
    101
    Hallo,

    Danek erstmal für deine Idee, das mit dem Heap ist vielleicht gar nicht so schelcht.
    aber Die Programme laufen beide schon sprich sie laufen gleichzeitig.
    Würde das die sache vereinfachen oder eher erschweren? weil wenn du sagts wenn sie gleichzeitig drauf zugreifen gibts bluescreen werd ich die
    Idee kaum umsetzen können weil das eine Programm fröhlich weiter die Variablen inkrementiert und ich eben den jetztigen stand davon in dem anderenProgramm auslesen will.

    Leider geht es net beide zu kombinieren das wäre super XD


    Danke nochmals für deine Antwort °°


    greetz sand13r
     
    #include<MCoder.h>
    #include<iostream>
    #include<conio.h>

    int main()
    {
    MCoder *pmcoder;

    cout<<"Please ask your Question!!"<<endl;
    cin>>pmcoder->QuestionString;

    cout<<"Answer is:" <<pmcoder->GetAnswer(pmcoder->QuestionString)<<endl;

    getch();
    return 0;
    }

  4. #4
    Avatar von devDevil
    devDevil ist offline Mitglied Platin
    Registriert seit
    Jun 2005
    Beiträge
    662
    Hm an einfachsten gehst du so vor:
    Programm zum überwachen des Speichers laden ... nach aktuellem Wert deiner Variable suchen ... dann wirst du mehrere Ergebnisse finden ... warten bis sich der Wert verändert hat und unter den vorher gefundenen nach diesem wert suchen ... und das so lange bis nur ein Wert übergeblieben ist. Dann hast du die Speicheradresse von deiner Variable. Darüber ist es ein Kinderspiel, der einen neuen Wert zuzuweisen!
     

  5. #5
    Avatar von sheel
    sheel ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    6.727
    meiner erfahrung nach räumt windows xp nach programmende fröhlich alle deine variablen auf, auch wenn sie auf dem heap sind.
    und wenn gleichzeitig: wenn prog2 die adressen weiss, bringt das gar nichts, windows passt schon auf, das jedes programm nur seinen eigenen Speicherbereich verwendet.
    Also würdet ihr entweder falsche Werte oder einen Absturz bekommen.

    Probierts aus: Schreibt ein kleines Programm, mach ein int a und gibt davon die Adresse aus
    dann system("pause"); oder sonstwas
    startet das gleiche programm zwei mal, und vergleicht die adressen?
    vermutlich werden sie gleich sein, die werte könnt ihr aber trotzdem nicht so einfach übertragen.

    Warum nehmt ihr nicht einfach dateien oder sonstwas.
     

  6. #6
    Avatar von sheel
    sheel ist offline Moderator
    tutorials.de Moderator
    Registriert seit
    Jul 2007
    Beiträge
    6.727
    @devdevil: bin gespannt, ob das os da mitmacht
    ausserdem kann es ja den gleichen wert auch irgendwo anders noch geben
     

  7. #7
    Avatar von devDevil
    devDevil ist offline Mitglied Platin
    Registriert seit
    Jun 2005
    Beiträge
    662
    Nein, kann es nicht Lies bitte genau Wenn du die gefundenen Ergebnisse nach dem verändern des Wertes nochmal nach dem neuen Wert durchsuchst usw. wirst du bald nur noch EINE Adresse bekommen.

    Das macht das OS problemlos mit. (Vgl. Trainer, die genau so arbeiten ... auch wenn manchmal zum Schutz z.B. der Wert der Variable +x odg. gemacht wird)
     

Thema nicht erledigt

Ähnliche Themen

  1. Antworten: 4
    Letzter Beitrag: 04.06.10, 12:13
  2. Globale Variable in anderer Datei auslagern
    Von Antispy im Forum VisualStudio & MFC
    Antworten: 2
    Letzter Beitrag: 01.01.09, 16:08
  3. Zugriff auf Variable in anderer Methode?
    Von SuReBuRn im Forum PHP
    Antworten: 1
    Letzter Beitrag: 30.10.07, 07:08
  4. Antworten: 10
    Letzter Beitrag: 21.02.05, 20:40
  5. Variable aus anderer Ebene holen...
    Von Kebb im Forum Flash Plattform
    Antworten: 4
    Letzter Beitrag: 05.10.04, 20:07