- 115
- 5
- CPU
- i7 7700k
- Dissipatore
- Cooler Master Seidon 120v
- Scheda Madre
- MSI z-270 GAMING M3
- RAM
- 2 x 8gb Corsair Vengeance LED
- GPU
- ASUS Strix GTX 1070
- Monitor
- HP Pavilion 22xi Full HD
- PSU
- Antec 620 80 + Bronze
- OS
- Windows 10 pro
Ciao a tutti, vorrei chiedervi un aiuto per questo eserczio con stringhe in C. Ecco il testo dell'esercizio e la soluzione parziale. Vorrei chiedervi di aiutarmi a capire i passaggi che segnerò.
Testo esercizio:
Soluzione della funzione:
int anagramma(unsigned char *x, unsigned char *y) {
int i;
int xc[256], yc[256];
for (i = 0; i < 256; i++) { xc = yc = 0; }
int lenx = strlen(x);
int leny = strlen(y);
if(lenx != leny) return 0;
for (i = 0; i < lenx ; i++) {
xc[x] += 1; * Non capisco questo passaggio
yc[y] += 1; e questo
}
for (i = 0; i < 256; i++) {
if (xc != yc) return 0; * di conseguenza questo.
}
return 1;
}
Non riesco a capire proprio la sintassi di questi passaggi, che vuol dire xc[x]? Come andamento generale riesco a capirlo. Grazie ancora.
Testo esercizio:
Soluzione della funzione:
int anagramma(unsigned char *x, unsigned char *y) {
int i;
int xc[256], yc[256];
for (i = 0; i < 256; i++) { xc = yc = 0; }
int lenx = strlen(x);
int leny = strlen(y);
if(lenx != leny) return 0;
for (i = 0; i < lenx ; i++) {
xc[x] += 1; * Non capisco questo passaggio
yc[y] += 1; e questo
}
for (i = 0; i < 256; i++) {
if (xc != yc) return 0; * di conseguenza questo.
}
return 1;
}
Non riesco a capire proprio la sintassi di questi passaggi, che vuol dire xc[x]? Come andamento generale riesco a capirlo. Grazie ancora.