01: // nuovi elementi string.h -> strcmp()
02: #include<stdio.h>
03: #include<stdlib.h>
04: 
05: #include<string.h>
06: 
07: int main(int argc, char **argv){
08: 
09:   char a[]="Fondamenti";
10:   char b[]="Fondamenti";
11:   char c[]="FONDAMENTI";
12: 
13:   printf("a=[%s]\n", a);
14:   printf("b=[%s]\n", b);
15:   printf("c=[%s]\n", c);
16: 
17: 
18:   if(a == b) // con gli array NON funziona, sto confrontando i loro indirizzi in memoria
19:     printf("I valori di a e b sono uguali\n");
20:   else
21:     printf("I valori di a e b sono differenti\n");
22: 
23: 
24:   printf("a==b        vale %d\n", a==b);
25:   printf("a=%p\n", a);
26:   printf("b=%p\n", b);
27:   printf("strcmp(a,b) vale %d\n", strcmp(a,b));
28:   printf("strcmp(a,c) vale %d\n", strcmp(a,c));
29:   printf("strcmp(c,a) vale %d\n", strcmp(c,a));
30: 
31:   return 0;
32: }
33: 
34: /*
35: 
36:    int strcmp(const char *s1, const char *s2);
37: 
38:    compara tutti i caratteri e restituisce
39:     - 0 se le due stringhe sono uguali
40:     - un valore > 0 se s1 ">" s2
41:     - un valore < 0 se s1 "<" s2
42: 
43: 
44: a=[Fondamenti]
45: b=[Fondamenti]
46: c=[FONDAMENTI]
47: I valori di a e b sono differenti
48: a==b        vale 0
49: a=0x7ffc2351b087
50: b=0x7ffc2351b092
51: strcmp(a,b) vale 0
52: strcmp(a,c) vale 32
53: strcmp(c,a) vale -32
54: 
55: */
56: 
57: 


Se avete commenti o osservaƶioni su questa pagina
mandate un messaggio di posta elettronica a bertoƶƶi@ce.unipr.it