Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Immer diese Fehlermeldung

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
11.02.2003, 17:32 Uhr
~newcomer
Gast


Hallo, ich hab mal wieder eine Frage, wer kann mir sagen was an folgendem Codefragment nicht stimmt. Ich erhalte immer, nachdem ich die Anzahl der verschiedenen Konditionen eingegeben hab eine Fehlermeldung und das Programm wird beendet.

C++:
#include <stdio.h>
#include <stdlib.h>

int main(void)
{

float *piKapital, *piZinssatz;
int iAnzahl, iCount, iWahl;
char *pszAuff1 = "Geben Sie die Anzahl der verschiedenen Konditionen ein.";
char *pszSpeich = "Fehler bei der Speicherzurodnung, Programm neu starten";


printf("Legen Sie Ihre Konditionentabelle an, darauf basierend koennen"
       "kuenftig Berechnungen automatisch durchgefuehrt werden.\n\n");
printf("Bitte waehlen:\n1. Tagesgeld\n2. Festgeld\n3. Spareinlagen\n4. Sparbriefe\n");

scanf("%i", &iWahl);

switch(iWahl){
case 1:
        printf("%s", pszAuff1);
        scanf("%i", &iAnzahl);

        piKapital = (float*) calloc(iAnzahl, sizeof(float));
        if (piKapital==NULL){
        printf("%s", pszSpeich);
        exit(EXIT_FAILURE);}

        piZinssatz = (float*) calloc(iAnzahl, sizeof(float));
        if (piKapital==NULL){
        printf("%s", pszSpeich);
        exit(EXIT_FAILURE);}

        for (iCount=0; iCount < iAnzahl; iCount++){

        printf("Anlagebetrag folgendermassen eingeben:[10000.00]\n");
        scanf("%f", piKapital[iCount]);
        printf("Zinssatz folgendermassen eingeben [5.00]\n");
        scanf("%f", piZinssatz[iCount]);}

        printf("\n\n Ihre Konditionentabelle:\n\n");
        for(iCount=0; iCount < iAnzahl; iCount++)
        printf("Kapital:\t%.2f\t%.2f\n", piKapital[iCount], piZinssatz[iCount]);

        free( (void*) piKapital);
        free( (void*) piZinssatz);
        piKapital==NULL;
        piZinssatz==NULL;
        break;
case 2:
        printf("So ne scheisse");
        break;}
return 0;
}


Dieser Post wurde am 11.02.2003 um 18:09 Uhr von Uwe editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
12.02.2003, 07:04 Uhr
~Jürgen Wolf
Gast


Hallo,

Du hast bei scanf den Adressoperator vergessen:

...
scanf("%f", &piKapital[iCount]);
...
scanf("%f", &piZinssatz[iCount]);
...

Gruss
Jürgen
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
12.02.2003, 16:13 Uhr
Alf



Hy!

Ne


C++:
float *piKapital, *piZinssatz;

sind ja schon Zeiger!


C++:
char *pszAuff1 = "Geben Sie die Anzahl der verschiedenen Konditionen ein.";
char *pszSpeich = "Fehler bei der Speicherzuordnung, Programm neu starten";



Du hast den Zeigern noch keine Addresse zu gewiesen!

Du schreibst damit die Texte irgendwo hin!

versuch mal:


C++:
const char pszAuff1[] = "Geben Sie die Anzahl der verschiedenen Konditionen ein.";
const  char pszSpeich[] = "Fehler bei der Speicherzuordnung, Programm neu starten";


--
Mfg

Andy
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
12.02.2003, 16:17 Uhr
Alf



Ach


C++:
piKapital==NULL;
        piZinssatz==NULL;




C++:
piKapital=NULL;
piZinssatz=NULL;


--
Mfg

Andy

Dieser Post wurde am 12.02.2003 um 16:18 Uhr von Alf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
12.02.2003, 19:41 Uhr
~newcomer
Gast


Danke Andy !

aber ist es denn schlimm wenn ich die Zeichenkette irgendwo hinschreibe. Ich dachte bei Strings ist es egal. In meinen Unterlagen steht bei Pointern auf Strings kann man das so machen, ich probier aber mal deinen Vorschlag.

Cu,

newcomer
 
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: