Problem bei for Anweisung

05/04/2009 - 15:40 von G | Report spam
Hi @ all

ich versuche gerade in C eine for Anweisung zu schreiben, das ein Array
initialisiert und jedem Index einen Wert zuweist ( mit hilfe von define),
aber wenn ich das Programm compiliere (was auch klappt) und starte
bekommen ich ein "Segmentation fault" kann mir vielleicht da jemand
weiter helfen ich bin am verzweifeln. Vielen dank im voraus für eure
Mühe. Und Sorry wenn ich euch mit sowelchen noob fragen nerve.

#include <stdio.h>

#define WERT 777

int feld [500];
int eingabe = 0,zaehler=0;

int main (void)
{
for ( feld[zaehler] ; feld[zaehler] < 499; feld[zaehler++]=WERT)
; /*leer anweisung*/

printf(" Bitte geben Sie eine Zahl zwischen 0-499 um die werte zu
vergleichen");

scanf("%d",&eingabe);

printf ("Sie wollen den index %d sehen der Index %d hat den Wert %d

",eingabe,eingabe,feld[eingabe]);

return 0;

}
 

Lesen sie die antworten

#1 Tremos
05/04/2009 - 16:01 | Warnen spam
Am Sun, 05 Apr 2009 13:40:51 +0000 schrieb Gökhan Demircan:

Hi @ all

ich versuche gerade in C eine for Anweisung zu schreiben, das ein Array
initialisiert und jedem Index einen Wert zuweist ( mit hilfe von
define), aber wenn ich das Programm compiliere (was auch klappt) und
starte bekommen ich ein "Segmentation fault" kann mir vielleicht da
jemand weiter helfen ich bin am verzweifeln. Vielen dank im voraus für
eure Mühe. Und Sorry wenn ich euch mit sowelchen noob fragen nerve.

#include <stdio.h>

#define WERT 777

int feld [500];
int eingabe = 0,zaehler=0;

int main (void)
{
for ( feld[zaehler] ; feld[zaehler] < 499; feld[zaehler++]=WERT) ;
/*leer anweisung*/

printf(" Bitte geben Sie eine Zahl zwischen 0-499 um die werte zu
vergleichen");

scanf("%d",&eingabe);

printf ("Sie wollen den index %d sehen der Index %d hat den Wert %d

",eingabe,eingabe,feld[eingabe]);

return 0;

}



Ich habe mal das obige Programm jetzt so geschrieben:

#include <stdio.h>

#define WERT 777

int feld [500];
int eingabe = 0,zaehler=0;

int main (void)
{
for ( zaehler ; zaehler < 499; zaehler++)

feld[zaehler] = WERT;

printf(" Bitte geben Sie eine Zahl zwischen 0-499 um die werte zu
vergleichen");
scanf("%d",&eingabe);
printf ("Sie wollen den index %d sehen der Index %d hat den Wert %d
",eingabe,eingabe,feld[eingabe]);
return 0;

}

in der Weise haut es hin, aber wie oben beim ersten Beispiel will es
nicht hin hauen

Ähnliche fragen