Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Hilfe bei "C" strcmp("name","Frank")

Empfohlene Antworten

Veröffentlicht

Hallo!

Danke für eure Hife, habe das Programm umgeschrieben läuft immer noch nicht, was hab ich denn jetzt bloß falsch gemacht????

Ich brauche glaube ich ein Buch!!!!!

Ich habe letzte Woche mit dem programmieren anfangen müssen und habe nun schon ein kleines Problem mit meinem Programm.

Dieses Programm soll eine Namensabfrage vollziehen das heißt, wird der Name Frank über Tastatur eingegeben soll als mitteiling ausgegeben werden "richtig" bei falscher eingabe soll dem entsprechent "falsch" augegeben werden.

Was stimmt an der Syntax nicht?

Kann mir jemand ein Buch("C") emfehlen?

Danke!

#include <stdio.h>

#include <string.h>

void main ()

{

char name[20];

printf("Bitte geben Sie einen Namen ein \n");

scanf("%s", name);

\\ wie erkennt er den Inhalt von Name???

strcmp("name","Frank");

{

if (strcmp == 0)

printf("gut");

else

printf("schlecht");

}

}

<FONT COLOR="#a62a2a" SIZE="1">[ 16. Juli 2001 10:58: Beitrag 1 mal editiert, zuletzt von HackTack ]</font>

Ich schließe mich meinem Vorredner an...

Du vergleichst dort nämlich die Speicheradresse der Variable "name" mit dem String "Frank". Durch das "&" vor der Variable greifst du auf die Adresse der Variablen zu. Willst du auf den Inhalt zugreifen, laß das "&" einfach weg.

Zwei Strings vergleichst du mit

strcmp("String1","String2");

Hat strcmp den Rückgabewert 0 so sind die Strings gleich.

ausserdem:

mit %c liest du nur einen einzigen buchstaben ein,

mit %s kann man ne ganze kette einlesen

buchtip ist kerningham/ritchie wie oben, da das die erfinder von C sind/ waren (leben die noch????)

<FONT COLOR="#a62a2a" SIZE="1">[ 16. Juli 2001 08:59: Beitrag 1 mal editiert, zuletzt von [Hasi] ]</font>

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von HackTack:

<STRONG>

char name[20];

// [...]

scanf("%c",&name);

// [...]

</STRONG>

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von HackTack:

<STRONG>Hallo!

Danke für eure Hife, habe das Programm umgeschrieben läuft immer noch nicht, was hab ich denn jetzt bloß falsch gemacht????

// [...]

scanf("%s", name);

\\ wie erkennt er den Inhalt von Name???

strcmp("name","Frank");

{

if (strcmp == 0)

printf("gut");

else

printf("schlecht");

}

}</STRONG>

@HackTack

du kannst es auch mal so probieren:

strstr(buffer1,"Teststep")

buffer1 ist ein char-Array in dem der zu durchsuchende String steht

Teststep ist das zu suchende Pattern

also:

if(strstr(buffer1,"Teststep"))

printf("Ok");

else

"tu was anderes"

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von Dagegen:

<STRONG>@HackTack

du kannst es auch mal so probieren:

[...]

also:

if(strstr(buffer1,"Teststep"))

printf("Ok");

else

"tu was anderes"</STRONG>

dann checkst du halt nocu auf String-Ende oder Space ab:

if(strcmp(name, "Frank\0") == 0)

od.

if(strcmp(name, "Frank ") == 0)

<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica, sans-serif">Zitat:</font><HR>Original erstellt von Shadax:

<STRONG>

// probier das mal:

if(strcmp(name, "Frank") == 0)

printf("gut");

else

printf("schlecht");

// du hattest geprüft, ob "name" gleich "Frank" ist,

// und nicht, ob der _Inhalt_ von name gleich "Frank" ist</STRONG>

oops, hab das korrektur posting weiter oben übersehen ... egal.

<FONT COLOR="#a62a2a" SIZE="1">[ 16. Juli 2001 16:20: Beitrag 1 mal editiert, zuletzt von Poldi ]</font>

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.