Erstens:
Dirty Oerti hat geschrieben:Ich erinnere noch mal daran: Leute, rückt euren Code anständig ein!
canlot hat geschrieben:Ist ja nicht mein Code, ich habe denn nur umgeändert.
Jetzt ist es aber dein Code.
Rück anständig ein, sonst verlierst du früher oder später den Überblick, ganz zu schweigen davon, was andere sagen, die mit dir zusammenarbeiten sollen/wollen/müssen/dürfen!
Dann:
Das du dir die Eingabe mal ausgeben lässt zeigt dir doch eigentlich schon, wo dein Fehler liegt:
Code: Alles auswählen
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main (int argc, char** argv)
{
const char text[] = "lol";
char eingabe[10];
//fgets(eingabe,10,stdin);
scanf("%s",eingabe);
if (strcmp(text, eingabe) == 0)
{
printf("Strings sind gleich\n");
}
else
{
printf("Strings sind nicht gleich\n");
}
printf("eingabe: %s\n",eingabe);
return 0;
}
(Außer der Einrückung solltest du auch darauf achten, dass deine Variablen einigermaßen sinnvolle Namen haben, und die main Funktion sollte so aussehen wie hier und nicht anders (wie du argv schreibst ist dabei aber fast egal, Hauptsache es ist erkenntlich, dass es ein Array von Char-Arrays ist)
Die Ausgabe:
mit fgets hat geschrieben:
daniel@gosigmus:~$ ./pc
lol
Strings sind nicht gleich
eingabe: lol
daniel@gosigmus:~$
mit scanf hat geschrieben:
daniel@gosigmus:~$ ./pc
lol
Strings sind gleich
eingabe: lol
daniel@gosigmus:~$
Siehst du den Unterschied?
