Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Zeiger-Programm-bitte um Antwort

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
02.08.2005, 18:33 Uhr
~Silence
Gast


Kann mir jemand bei folgendem Programm helfen? Ist wirklich sehr wichtig

C++:
#include<iostream>
using namespace std;

struct p
   {
       int a;
       p*pNext, *pPrev;
   };

int del (int to_delete, p*&pAnker1)
   {
       p*pdelz, *phelp;
       int anzahl=0;
      
       if((pAnker1 -> a)== to_delete)
         {
             pdelz=pAnker1;
             pAnker1=pAnker1->pNext;
             delete pdelz;
             pAnker1->pPrev=NULL;
             anzahl++;
         }
        
        phelp=pAnker1;
        while(phelp->pNext!=NULL)
         {   //Nun wird der Rest untersucht
             phelp=phelp->pNext;
            
             if((phelp->a==to_delete)&&(phelp->pNext==NULL))
               {
                   pdelz=phelp;
                   phelp=phelp->pPrev;
                   phelp->pNext=NULL;
                   delete pdelz;
                   anzahl++;
               }              
            
             if(phelp->a==to_delete)
               {
                   pdelz=phelp;
                   phelp=phelp->pNext;
                   phelp->pPrev=pdelz->pPrev;
                   pdelz->pPrev->pNext=pdelz->pNext;
                   delete pdelz;
                   anzahl++;
               }
              
       cout<<"Es wurden "<<anzahl<<" Elemente gelöscht";              
   }    
  
  
main()
{
    p*pAnchor, *pNew, *pLast;
    int i=1;
    int tmp;
    pAnchor = new p;
    cin>>tmp;
    pAnchor -> a = tmp;
    pAnchor -> pNext = pAnchor -> pPrev = NULL;
    pLast = pAnchor;
    pLast = pAnchor;
    
    while(i<6)
     {
         pNew = new p;
         cin>>tmp;
         pNew -> a = tmp;
         pLast -> pNext = pNew;
         pNew -> pPrev = pLast;
         pLast = pNew;
         pLast -> pNext = NULL;
         i++;
     }
    
    
     int b;
    
     cout<<"Welches integer Datenelement soll geloescht werden?";
     cin>>b;
     del(b,pAnchor)
    
//Ausgabe der Elemente
p*phelpz;
phelpz=pAnchor;
while(phelpz->pNext!=NULL)
   {   //Ende der Liste finden
       phelpz=phelpz->pNext;  
   }
  
  while(phelpz->pPrev!=NULL)
    {   //von hinten angefangen ausgeben
        cout<<phelpz->a<<" ";
    }    
    
}



Fehlermeldung meines Compilers:
pAnchor, pLast, pNew und pdelz seien undeklariert (obwohl ich sie deklariert habe)
main sei auch undeklariert, aber ich schreibe sonst nie int oder sowas davor und das funktioniert immer.

Kann mir bitte jemand helfen? Danke im voraus

mod edit: Herrje, benutzt denn niemand die verdammten CPP Tags selber?

Dieser Post wurde am 02.08.2005 um 19:17 Uhr von Pablo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
02.08.2005, 19:20 Uhr
Pablo
Supertux
(Operator)


zeig lieber die genaue Fehlermeldungen.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
02.08.2005, 20:32 Uhr
~Silence
Gast


Bemerkung: Wie soll ich denn diese CPP Tags verwenden, wenn's hier extra kompliziert gemacht ist. Ich weiß echt nicht wie das geht. Bin neu hier, seit heute. In diesem Forum sind wirklich schlaue Leute, aber trotzdem ist das Forum Scheiße gemacht. Ich kann meine Fehlermeldungen als jpg nicht einblenden. Ich programmiere übrigens mit Bloodsheed Dev C++

Drum werd ich dir die Fehlermeldungen mal aufschreiben:
(Each undeclared identifier is reported only once for each function it appears
Zeile 53 Syntax Error before '{' token
Zeile 57 ` pAnchor' undeclared (first use this function)
Zeile 61 ` pLast' undeclared (first use this function)
Zeile 66 ` pNew' undeclared (first use this function)
Zeile 84 syntax error before `*' token
Zeile 85 ` phelpz' undeclared (first use this function)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
02.08.2005, 21:24 Uhr
Pablo
Supertux
(Operator)


So, der Fehler ist, dass du einen Schreibfehler irgendwo auf Zeile 53 hast und nicht weiterkompiliert werden kann (Syntax Error before '{' token), irgendwas hast du da vergesen, aber ich weiß nicht, welche die Zele 53 ist.

Was denn CPP Tags angeht, du musst den code zwischen [cpp] und [/cpp] schreiben, mehr nicht.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
02.08.2005, 21:36 Uhr
~Silence
Gast


Danke, hat viel geholfen. Hoffe du kannst mir nochmal helfen.

Zwei Dinge sind's noch:
In function `int main()':
Zeile 85 syntax error before `*' token
Zeile 86 ` phelpz' undeclared (first use this function)
(Each undeclared identifier is reported only once for each function it appears

In Zeile 85 hab ich aber nichts vergessen, das ist in der main Funktion wo folgendes steht:


C++:
//Ausgabe der Elemente



Damit du es schneller findest und mir vielleicht helfen kannst hab ich's extra mal mit hingeschrieben.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
02.08.2005, 21:38 Uhr
~Silence
Gast


Okay, hat sich erledigt. Hab den Fehler gefunden. Hatte ein Semikolon vergessen. Programm läuft jetzt. Juhuuu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
05.08.2005, 12:02 Uhr
~rene
Gast


hast in der main hinter del() das symikolon vergessen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: