001
14.12.2003, 21:45 Uhr
Pablo
Supertux (Operator)
|
Um C-Zeichenketten zu vergleichen muss man die Funktion strcmp (in string.h) benutzen. strcmp liefert 0, falls alle Zeichen gleich sind.
Wenn man == benutzt, dann liefert das 1 (bzw. true) wenn die Adresse der Pointer gleich ist.
C++: |
#include <stdio.h> #include <string.h>
int main() { char a[]="Hallo"; char b[6]; strcpy(b,"Hallo"); // kopiert in b die Zeichenkette Hallo printf("%d ... %d\n", a==b, strcmp(a,b)); return 0; }
|
Wenn du das ausführst, bekommst du 0 ... 0. Das zeigt, dass a!=b, aber a und b haben die gleichen Zeichen. -- A! Elbereth Gilthoniel! silivren penna míriel o menel aglar elenath, Gilthoniel, A! Elbereth! Dieser Post wurde am 14.12.2003 um 21:49 Uhr von Pablo Yanez Trujillo editiert. |