01: // ricerca caratteri e sottostringhe
02: #include<stdio.h>
03: #include<stdlib.h>
04:
05: #include<string.h>
06:
07: int main(int argc, char **argv){
08:
09: char s[] = "The Mississippi is a long river.", *p;
10:
11: printf("s=[%s]\n", s);
12:
13: p = strchr(s,' '); // cerco nella stringa s la prima occorrenza del carattere ' '. Se c'e' ne restituisco l'indirizzo in p (altrimenti NULL)
14: printf(" strchr(s,' ') punta a s[%ld]\n", p-s); // aritmentica dei puntatori la differenza tra due indirizzi rappresenta il numero di posizioni tra l'uno e l'altro
15:
16: p = strchr(s,'s'); // come sopra ma cerco il carattere 's'
17: printf(" strchr(s,'s') punta a s[%ld]\n", p-s);
18:
19: p = strrchr(s,'s'); // cerco nella stringa l'ultima occorrenza della lettera 's' ovvero come sopra ma ricerco partendo da destra
20: printf(" strrchr(s,'s') punta a s[%ld]\n", p-s);
21:
22: p = strstr(s,"is"); // cerco la prima occorrenza della stringa "is"
23: printf(" strstr(s,\"is\") punta a s[%ld]\n", p-s);
24:
25: p = strstr(s,"isi"); // cerco la prima occorrenza della stringa "isi", ma in questo caso controllo se l'ho trovata. Spoiler: NO
26: if (p == NULL)
27: printf(" strstr(s,\"isi\") restituisce NULL\n");
28:
29:
30:
31: return 0;
32: }
33:
34: /* ESECUZIONE
35:
36: s=[The Mississippi is a long river.]
37: strchr(s,' ') punta a s[3]
38: strchr(s,'s') punta a s[6]
39: strrchr(s,'s') punta a s[17]
40: strstr(s,"is") punta a s[5]
41: strstr(s,"isi") restituisce NULL
42:
43: */
44:
45:
Se avete commenti o osservaƶioni su questa pagina
mandate un messaggio di posta elettronica a bertoƶƶi@ce.unipr.it
mandate un messaggio di posta elettronica a bertoƶƶi@ce.unipr.it