Warscheinlich für euch eine einfache Frage =)
-
Hallo Jashmidi,
char Vorname[256]; char Nachname[256];
scanf("%d",&lohnalt); scanf("%d",&lohnneu);
scanf erwartet Adressen
Zwar sind die scans für Vorname und Nachname immer noch unsicher,
aber deutlich sicherer als vorher.Auf dem Stack kann man problemlos 256 Zeichen anlegen,
'kostet' auch nicht wirklich mehr als 10 ZeichenGruß Frank
-
Frank Erdorf schrieb:
scanf erwartet Adressen
Oh, wie peinlich, hab natürlich total übersehen.
Hab schon seit Jahren nicht mehr scanf() angewendet...Martin
-
mach dir nichts daraus,
war ja nicht dein Fehler und
ich habe auch etwas länger suchen müssen ...@Jashmidi
gute Fehlermeldung, guter erster Post,
aber doch drei 'fiese' Fehler in soo wenig Code ...Alle geeignet beliebiges Verhalten zu produzieren.
Versuche das Thema Pointer zu verstehen,
sonst wirst du viele 'komische' Phänomene beim Programmieren erleben.Gruß Frank
-
Jashmidi schrieb:
fflush(stdin);
Führt zu undefiniertem Verhalten. fflush ist nur für output-streams definiert, steht alles auch in der FAQ, d.h. wird immer wieder falsch gemacht.
-
Bei mir geht das wunderbar.
-
............. schrieb:
Bei mir geht das wunderbar.
Das kann durchaus sein. Allerdings muss das nicht für jedes Betriebssystem so sein. Du arbeitest bestimmt unter Windows. Unter Linux sieht die Sache, glaube ich zumindest, schon ganz anders aus.
-
Im übrigen heißt es int main und nicht void main.
-
----------- schrieb:
Im übrigen heißt es int main und nicht void main.
Das fiese ist ja, es gibt Entwicklungsumgebungen die automatisch ein void statt ein int setzen. - > Ist sowieso ein Streitthema.
-
inflames2k schrieb:
Das fiese ist ja, es gibt Entwicklungsumgebungen die automatisch ein void statt ein int setzen. - > Ist sowieso ein Streitthema.
Wieso Streitthema? Der Standard sagt: Kein void main. Und fertig.
-
Das sollte mit C-Streams besser funktionieren als fflush(stdin):
http://www.c-plusplus.net/forum/viewtopic-var-t-is-39349.html