CARS
|
File che contiene la gestione delle operazioni su stringhe che contengono il path fra 2 citta' indicato come elenco delle citta' separate dal simbolo '$' Esempio: PISA$LUCCA$PISTOIA. More...
Functions | |
char * | nextCity (char *path) |
int | countCity (char *path) |
char * | nextPath (char *path, int n) |
int | isEqualCity (char *off, char *req) |
int | cityMatch (char *req, char *off, int *begin) |
int | pathLen (char *elem, int begin, int city_found) |
char * | cityString (char *path, int begin, int city_found, int size) |
char * | cutPath (char *path, int steps) |
File che contiene la gestione delle operazioni su stringhe che contengono il path fra 2 citta' indicato come elenco delle citta' separate dal simbolo '$' Esempio: PISA$LUCCA$PISTOIA.
Si dichiara che il contenuto di questo file e' in ogni sua parte opera originale dell' autore.
int cityMatch | ( | char * | req, |
char * | off, | ||
int * | begin | ||
) |
Cerca di trovare un match fra il path req ed off Se riesce a trovarlo, ritorna la lunghezza di tale match, e il numero di citta' nel path offer dal quale inizia il match
[in] | req | path che si cerca di associare |
[in] | off | path su cui si cerca un associazione |
[out] | begin | numero della citta' da cui partire |
Vengono trovati match anche parziali per il path req. Nel caso viene indicato il match piu' lungo possibile.
References isEqualCity(), and nextCity().
Referenced by findRec().
char* cityString | ( | char * | path, |
int | begin, | ||
int | city_found, | ||
int | size | ||
) |
Restituisce una stringa che contiene il percorso effettuato sul path elem, partendo dalla citta' begin facendo city_found passi.
[in] | path | il path su cui calcolare il percorso |
[in] | begin | la citta' da cui iniziare |
[in] | city_found | i passi da fare su tale path |
[in] | size | dimensione della stringa da allocare |
Il | puntatore alla stringa allocata |
References nextCity().
Referenced by createAssoc().
int countCity | ( | char * | path | ) |
Restituisce il numero delle citta' del path
[in] | path | la stringa contenente il path |
il | numero delle citta' |
References nextCity().
Referenced by findRec(), and updateOfferList().
char* cutPath | ( | char * | path, |
int | steps | ||
) |
Taglia la stringa dopo aver effettuato steps passi
[in,out] | path | il percorso da taglia |
[in] | steps | il numero di passi da effettuare |
Il | puntatore alla seconda parte della stringa tagliata. |
Referenced by updateOfferList().
int isEqualCity | ( | char * | off, |
char * | req | ||
) |
Indica se le citta' all'inizio dei 2 path sono le stesso
[in] | req | il primo path |
[in] | off | il secondo path |
0 | se le citta' sono differenti |
un | qualsiasi valore diverso da zero negli altri casi. |
References FALSE.
Referenced by cityMatch().
char* nextCity | ( | char * | path | ) |
Restituisce il puntatore alla prossima citta del path
[in] | path | stringa contenten il path |
NULL | se il path e' NULL oppure se non vi sono altre citta' |
il | puntatore alla prossima citta' |
Referenced by cityMatch(), cityString(), countCity(), nextPath(), and pathLen().
char* nextPath | ( | char * | path, |
int | n | ||
) |
Restituisce il path ottenuto eseguendo n passi lungo path
[in] | path | stringa contente il percorso originario |
[in] | n | numero dei passi da eseguire |
puntatore | alla stringa ottenuta |
References nextCity().
Referenced by findRec(), and updateOfferList().
int pathLen | ( | char * | elem, |
int | begin, | ||
int | city_found | ||
) |
Calcola un upper bound per la dimensione del path generato dal match trovato su elem, partendo dalla citta' begin, e facendo city_found step. Tale valore e' necessario per allocare una stringa sufficientemente lunga
Utilizza la funzione isEqualCity
L'upper bound e' calcolato utilizzando LLABEL come valore massimo per la dimensione di un'etichetta
il | valore dell'upper bound |
References LLABEL, and nextCity().
Referenced by createAssoc().