Kleine Frage zu C-Programm

Hier kann über alles diskutiert werden, wirklich alles. Betonung liegt auf "diskutiert", das ist also kein Freischein zum Spammen.
(Beitragszähler deaktiviert)
Antworten
Benutzeravatar
Blue.Shark
großer Laubbär
Beiträge: 2864
Registriert: 5. Okt 2008, 21:27

Kleine Frage zu C-Programm

Beitrag von Blue.Shark » 23. Dez 2010, 17:07

Hi,
ich sitz schon richtig lange an einem Problem, ich hoffe jemand kann mir helfen:

Ich Programmiere in C gerade ein programm, bei denen Befehle ausgegeben werden.
Dann benutze ich eine Sleep funktion, damit 3 Sekunden gewartet wird. Das klappt alles.

So, nach den 3 Sekunden wird eine eingabe erwartet.

Jetzt zum Problem: Wenn ich in den 3 Sekunden, wo das Programm nichts macht bzw "schläft" schon tippe, wird es zwar nicht angezeigt, was ich getippt habe, aber nach den 3 Sekunden dann schon.
Und das will ich vermeiden. Also dass wenn ich in den 3 Sekunden lang etwas eintippe, der Compiler das einfach ignoriert.

Wäre sehr dankbar wenn da jemand einen Lösungsansatz hat^^
Macht alle bei meinem Spiel mit -> Wörter raten
Meine aktuelle User-Idee: Errungenschaften auf Zeit
Meine Wunsch-Idee: Das Haus der Statistiken, Liebligskarte: Etume - das Flusstal. Andere Userideen: Zauber der globalen Wunder

Benu
Zauberer der Bergwiesen
Beiträge: 658
Registriert: 26. Okt 2008, 13:21

Re: Kleine Frage zu C-Programm

Beitrag von Benu » 23. Dez 2010, 19:44

Nach dem sleep einfach mal "fflush(stdin);" versuchen. Und danach am besten fgets() nutzen solange du nicht irgendwelche komplizierten formatstrings brauchst.
http://fwrails.net
lokale Styes in Google Chrome
lokale Styles in Gologle folgen...
I'm beginning to feel like a Spam God

Benutzeravatar
Blue.Shark
großer Laubbär
Beiträge: 2864
Registriert: 5. Okt 2008, 21:27

Re: Kleine Frage zu C-Programm

Beitrag von Blue.Shark » 23. Dez 2010, 23:09

Das klappt so leider nicht :(
Macht alle bei meinem Spiel mit -> Wörter raten
Meine aktuelle User-Idee: Errungenschaften auf Zeit
Meine Wunsch-Idee: Das Haus der Statistiken, Liebligskarte: Etume - das Flusstal. Andere Userideen: Zauber der globalen Wunder

Benu
Zauberer der Bergwiesen
Beiträge: 658
Registriert: 26. Okt 2008, 13:21

Re: Kleine Frage zu C-Programm

Beitrag von Benu » 23. Dez 2010, 23:16

Bitte mal Source Code hier reinspoilern/per Pn an mich und die besagte Stelle kennzeichnen. Kann mir grad nicht vorstellen, dass das nicht geht.
Edit:
Doch klar kann ich mir vorstellen, dass das nicht geht. Werd mir das aber nochmal die Tage überlegen. Bis dahin wäre der Code ganz gut.
http://fwrails.net
lokale Styes in Google Chrome
lokale Styles in Gologle folgen...
I'm beginning to feel like a Spam God

Benutzeravatar
Blue.Shark
großer Laubbär
Beiträge: 2864
Registriert: 5. Okt 2008, 21:27

Re: Kleine Frage zu C-Programm

Beitrag von Blue.Shark » 25. Dez 2010, 10:35

Ok, danke.

Weiß denn kein anderer ne Lösung?
Macht alle bei meinem Spiel mit -> Wörter raten
Meine aktuelle User-Idee: Errungenschaften auf Zeit
Meine Wunsch-Idee: Das Haus der Statistiken, Liebligskarte: Etume - das Flusstal. Andere Userideen: Zauber der globalen Wunder

Benutzeravatar
Piru
Kopolaspinne
Beiträge: 733
Registriert: 28. Okt 2006, 10:49

Re: Kleine Frage zu C-Programm

Beitrag von Piru » 27. Dez 2010, 19:40

Der Code würde uns da echt weiterhelfen, dir zu helfen ;)
Bild

Benutzeravatar
Blue.Shark
großer Laubbär
Beiträge: 2864
Registriert: 5. Okt 2008, 21:27

Re: Kleine Frage zu C-Programm

Beitrag von Blue.Shark » 27. Dez 2010, 19:50

Also der Quellcode sieht so aus:
SpoilerShow

Code: Alles auswählen

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <windows.h>
void main()
{
	srand(time(0));
	char zus_buchstaben[100];
        char buchstaben [4];
        buchstaben[0]='s';
        buchstaben[1]='e';
        buchstaben[2]='d';
        buchstaben[3]='f';
        char eingabe[100];
	int k=0,zahl,pruefer,zaehler=0;

	printf("\n----------------------------------------------------------------\n");
	printf("Das Spiel kann nun anfangen. Wenn Sie bereit sind, druecken sie Enter\n");
	system("PAUSE");
	system("cls");
	while(true)
	{
		zahl=rand()%4;
		zus_buchstaben[k++]=buchstaben[zahl];
		zus_buchstaben[k]='\0';
		system("cls");
	---->	printf("Wort:\t%s\n",zus_buchstaben);
	---->	Sleep(3000);
	---->	system("cls");
	---->	printf("Eingabe:");
	---->	scanf("%s",eingabe);
		pruefer=strcmp(zus_buchstaben,eingabe);
		if(pruefer!=0)
		{
			printf("Sie haben falsch eingegeben.\n");
			printf("Ingesammt haben Sie %d Woerter richtig eingegeben\n",zaehler);
			break;
		}
		else
			zaehler++;
	}
	system("PAUSE");
	
}
Macht alle bei meinem Spiel mit -> Wörter raten
Meine aktuelle User-Idee: Errungenschaften auf Zeit
Meine Wunsch-Idee: Das Haus der Statistiken, Liebligskarte: Etume - das Flusstal. Andere Userideen: Zauber der globalen Wunder

Benutzeravatar
Blue.Shark
großer Laubbär
Beiträge: 2864
Registriert: 5. Okt 2008, 21:27

Re: Kleine Frage zu C-Programm

Beitrag von Blue.Shark » 28. Dez 2010, 15:17

Hat keiner eine Idee?

Ich hätte da noch eine kleine Frage:

In einer Datei kann ich ja mit folgendem Befehl schreiben:
fprintf(datei,"text");

Wenn ich das aber mache löscht der alles andere Weg.
Geht das irgendwie, dass ich z.b. "Hallo" in die 4.te Zeile schreiben kann?
(Der Rest soll unverändert bleiben)
Macht alle bei meinem Spiel mit -> Wörter raten
Meine aktuelle User-Idee: Errungenschaften auf Zeit
Meine Wunsch-Idee: Das Haus der Statistiken, Liebligskarte: Etume - das Flusstal. Andere Userideen: Zauber der globalen Wunder

Benu
Zauberer der Bergwiesen
Beiträge: 658
Registriert: 26. Okt 2008, 13:21

Re: Kleine Frage zu C-Programm

Beitrag von Benu » 28. Dez 2010, 18:08

Also die Frage zum Sleep Problem kann ich noch verstehen. Das ist kompliziert und wahrscheinlich nicht lösbar. Warum sollte es auch^^

Aber die Frage mit dem File Handle kann man sich zehnmal schneller selbst beantworten, wenn man etwas ehrgeiz an den Tag legt:
http://cplusplus.com/reference/clibrary/cstdio/fseek/
http://cplusplus.com/reference/clibrary/cstdio/fputs/
oder einfach mal fopen mit "a+" versuchen.
http://fwrails.net
lokale Styes in Google Chrome
lokale Styles in Gologle folgen...
I'm beginning to feel like a Spam God

Antworten

Wer ist online?

Mitglieder in diesem Forum: Google [Bot] und 7 Gäste