» Poradna » Programy

Textové řetězce v jazyku C

 |   | 

Dobrý den, kde mám chybu? Chci, aby se po zadání správného "hesla" vytiskl "libovolný text", ale ačkoliv to kompilátor projde, tak to nedělá, co má...

#include
#include

int main(int argc, char *argv[])
{
char jmeno[15];
scanf("%s",jmeno);
if (jmeno == "Heslo") printf("Heslo je OK!");
system("PAUSE");
return 0;
}

Děkuji předem!

Odpovědi na otázku

 |   | 

Prosím, prosím, nenajde se zde nikdo, kdo by mi poradil ?

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

V Ccku se porovnavaji retezce jinak
if (strcmp(jmeno,"Heslo") == 0) printf("Heslo je OK!");

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Ahoj. Tuším, že odpověď je v tom, že ukazatel na konstantní řetězec je něco jiného než pole znaků char.
Podmínka nebude nikdy splněna.

Pro porovnávání řetězců (respektive polí znaků) je funkce: strcmp

S tou by ti to mělo fungovat.


char jmeno[15];
scanf("%s",jmeno);

if (strcmp(jmeno,"Heslo")==0) printf("Heslo je OK!");
else
printf("Heslo NENI OK!");


Odpověď je možné hledat taky tady:
alpha.ujep.cz ...
a tady:
people.tuke.sk ...

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

V c jsem nedělal už aspoň 5 let, ale pokud moje chbá paměť slouží dobře, nemělo by být
scanf("%s", &jmeno);

Ale jak říkám, moje paměť a jazyk C nejsou moc v dobré kondici

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Neni protoze jmeno uz je sam o sobe ukazatel, tak neni treba tam dodavat &

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Děkuji moc "johnnash" i "Squad_leader", funguje to nyní ZCELA DLE MÝCH PŘEDSTAV!

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

A jak se to chova pri zadani hesla dlouheho 15 a vice znaku?

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: #include, Libovolný text, Kompilátor




Určitě si přečtěte

Osudová havárie Concordu: Před 18 lety přišel konec nadzvukových dopravních letadel

Osudová havárie Concordu: Před 18 lety přišel konec nadzvukových dopravních letadel

** Concorde byl nejrychlejším dopravním letadlem ** Atlantik dokázal přeletět za cca 3 až 3,5 hodiny ** Před osmnácti lety tragická havárie provoz těchto letadel prakticky ukončila

David Polesný, Jiří Černý | 39

Co pořídit k počítači: tipy na osvědčené klávesnice, sluchátka a další příslušenství

Co pořídit k počítači: tipy na osvědčené klávesnice, sluchátka a další příslušenství

** Toto jsou tipy Živě.cz na příslušenství k počítači, se kterým neuděláte chybu ** Klávesnice, myši, tiskárny, sluchátka... ** Vybíráme jak příslušenství na běžnou práci, tak na hraní her

David Polesný | 26

Zapomeňte na kabely, vědci už mají prototyp 120kW bezdrátové nabíječky pro elektromobily

Zapomeňte na kabely, vědci už mají prototyp 120kW bezdrátové nabíječky pro elektromobily

** Vědci představili prototyp výkonné bezdrátové nabíječky pro elektromobily ** I přes vysoký výkon se pyšní vysokou efektivitou ** Bude budoucnost nabíjení elektromobilů bezdrátová?

Karel Javůrek | 56

Nový iPhone a další novinky Applu: sledujte, na co se zase budou stát fronty

Nový iPhone a další novinky Applu: sledujte, na co se zase budou stát fronty

** Apple dnes představuje nové produkty v čele s novými iPhony ** Nemusí zůstat jen u telefonů, čekají se i další novinky ** Úvodní přednáška začíná v 19:00 našeho času

David Polesný | 57