enuncio il mio problema:
ho una stringa puntata da un puntatore, poniamo char *string.
il fatto è che il mio programma è composto, oltre che dalla funzione main, da altre funzioni, a loro volta contenenti altre sottofunzioni.
visto che char *string verrebbe dichiarata nel main (e ho bisogno che L'INDIRIZZO DELLA STRINGA venga passato PER RIFERIMENTO), e visto che tale stringa mi serve anche nelle altre funzioni , mi trovo davanti ad un bivio...
dichiaro char *string nel main, e passo la striga come argomento alle varie funzioni? in questo caso però avrei funzioni che gestirei + difficilmente, visto che mi troverei ad avere un sacco di dereferenze (arriverei per esempio ad avere funzioni dichiarate in questo modo
a causa dei continui passaggi della stringa da funzione a funzione...codice:void func (char ****string)
oppure risolvo il problema dichiarando char *string come variabile globale?
epperò in questo modo contravvengo al principio del minimo privilegio?
avevo pensato anche a far ritornare alle varie funzioni un puntatore a stringa (char *). ma in alcune di quelle funzioni mi occore un valore di ritorno di tipo int...

Rispondi quotando