Scanf abfragen ob etwas eingeben worden ist oder nicht???

janosch

Erfahrenes Mitglied
HI !

Ich stehe grad auf dem schlauch und komme nicht weiter:) :) .

Also ich lese mit Hilfe von "scanf" etwas ein und reagiere dem entspächend darauf,wenn der Anwender eine falsche Eingabe macht soll eine Hilfe ausgeben werden, was auch funktioniert. Jetzt meine Frage wie prüfe ich ab ob etwas eingeben worden ist oder nicht (da die hilfe auch erscheinen soll wenn der User einfach "Enter" drückt) ?

mfg janosch
PHP:
#include<stdio.h>
#include<stdlib.h>


struct list_t{
	int value;
	struct list_t *p_next;
};


void input();

int main(){

    input();

}
void input(){

	char value = 0;

	while((value!='x')&&(value!='q')&&(value!='X')&&(value!='Q')){

	printf(": ");
	scanf("%s",&value);
	switch(value){
		case 'E': printf("Eingabe E %s\n",&value);
				break;
		case 'e': printf("Eingabe e %s\n",&value);
				break;
		case 'I': printf("Eingabe I %s\n",&value);
				break;
		case 'i': printf("Eingabe i %s\n",&value);
				break;
		case 'D': printf("Eingabe D %s\n",&value);
				break;
		case 'd': printf("Eingabe d %s\n",&value);
				break;
		case 'L': printf("Eingabe L %s\n",&value);
				break;
		case 'l': printf("Eingabe l %s\n",&value);
				break;
		case 'Q':
				break;
		case 'q': 
				break;
		case 'X': 
				break;
		case 'x': 
				break;
		default: printf("  E,e,I,i Schluessel zum Einfuegen z.B. e23\n");
				 printf("  D,d,L,l Schluessel zum Loeschen z.B. d23\n");
				 printf("  Q,q,X,x zum Beenden z.B. d23\n");
				break;
				}
	
		
		  
		}
	
		
}
 
Zuletzt bearbeitet:
Öhm, bin mir nicht ganz sicher, da ich (wenn überhaupt was mit der
Konsole) immer "cin" benuzte (in iostream.h) und dann gleich
in Strings schreibe, aber probier mal folgendes:

if(value == NULL);


bin mir aber nicht sicher ob das geht...

Und zu müde und zu breit um das jetzt zu testen, gute n8!
 
Hi!

Versuchs mal mit:


Code:
...
case '': 
 {      printf("  E,e,I,i Schluessel zum Einfuegen z.B. e23\n");
        printf("  D,d,L,l Schluessel zum Loeschen z.B. d23\n");
        printf("  Q,q,X,x zum Beenden z.B. d23\n");
 }
...


Wenn du das mit IF statements machst würde es so gehen:

#include <string.h>

...
if (strlen(&value) == 0) 
{
 printf("  E,e,I,i Schluessel zum Einfuegen z.B. e23\n");
 printf("  D,d,L,l Schluessel zum Loeschen z.B. d23\n");
 printf("  Q,q,X,x zum Beenden z.B. d23\n");
}
...


Ich weiss nicht ob dir das zweite hilft, aber sicherheitshalber
poste ich's mal.
 
Zuletzt bearbeitet von einem Moderator:
Zurück