Forum by laureateci.it
[ Home | REGOLE FORUM | Tutti i blog | Profilo | Registrati | CHAT | Discussioni Attive | Discussioni Recenti | Segnalibro | Msg privati | Sondaggi Attivi | Utenti | Download Informatica | Download ICD | Download TPS | Download Magistrale | Download Specialistica | Giochi | Cerca nel web | cerca | faq | RSS ]
Nome Utente:
Password:
Salva Password
Password Dimenticata?

 Tutti i Forum
 INFORMATICA - Primo Anno
 Linguaggi di programmazione
 Grammar reader
 Nuova Discussione  Nuovo Sondaggio Nuovo Sondaggio
 Rispondi
 Versione Stampabile Bookmark this Topic Aggiungi Segnalibro
I seguenti utenti stanno leggendo questo Forum Qui c'č:
Pagina Successiva
Autore Discussione Precedente Discussione Discussione Successiva
Pagina: di 2

pinux
Utente Mamone

pinux2


Regione: Puglia


Inserito il - 17/05/2005 : 18:57:17  Mostra Profilo  Visita l'Homepage di pinux Invia a pinux un Messaggio Privato  Rispondi Quotando
qualcuno di voi mi potrebbe spiegare meglio il MAIN strutturato da Mencar nelle sue dispense?

nn ho capito bene come fa il programma a risalire al nome del file...
e soprattutto le funzioni che hanno argc e argv

cmq ho riadattato in questo modo e mi funziona (ma vorrei ugualmente capire.. GRAZIE )

main()
{
FILE *gram_file;
Grammar grammar;

/* apertura del file contenente la grammatica */

if ((gram_file = fopen("mygramm.txt","r"))== NULL)
printf("nome di file errato\n");
else
{
print_grammar(load_grammar(gram_file,&grammar));
fclose(gram_file);
}

getch();
return 0;
}




genius
dott. ing. cav. ...FN

Genio


Regione: Puglia
Prov.: Bari
Cittā: Molfetta - Caput Mundi


Inserito il - 18/05/2005 : 22:38:47  Mostra Profilo  Visita l'Homepage di genius  Clicca per vedere l'indirizzo MSN di genius  Invia a genius un messaggio Yahoo! Invia a genius un Messaggio Privato  Rispondi Quotando
ehm... sai ke č possibile passare dei parametri ai programmi?... io nn ho visto i programmi di mencar ma dato ke mi hai parlato di argc ed argv, e di nome di file, credo ke il nome del file lo prenda in input al lancio del programma...fammi sapere: c'č qualke parte del programma in cui sn usati proprio queste 2 variabili?

"...e se non hai morale
e se non hai passione
se nessun dubbio ti assale
perché la sola ragione che ti interessa avere
č una ragione sociale
soprattutto se hai qualche dannata guerra da fare
non farla nel mio nome
non farla nel mio nome
che non hai mai domandato la mia autorizzazione
se ti difenderai non farlo nel mio nome
che non hai mai domandato la mia opinione..."

Un blog farlocco
Torna all'inizio della Pagina

pinux
Utente Mamone

pinux2


Regione: Puglia


Inserito il - 18/05/2005 : 22:58:54  Mostra Profilo  Visita l'Homepage di pinux Invia a pinux un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da genius

ehm... sai ke č possibile passare dei parametri ai programmi?... io nn ho visto i programmi di mencar ma dato ke mi hai parlato di argc ed argv, e di nome di file, credo ke il nome del file lo prenda in input al lancio del programma...fammi sapere: c'č qualke parte del programma in cui sn usati proprio queste 2 variabili?



ecco la parte che differenzia il main di mencar dal mio:

int main(int argc, char *argv[])
{
char* filename = argv[1];


il resto č pressocchč tutto uguale, tranne ovvimante la if che č:
if ((gram_file = fopen(filename, "r"))== NULL)

quello che nn riesco a capire, č dove dichiarare che il file da cui dovrō caricare le produzioni č mygramm.txt

grazie




Torna all'inizio della Pagina

Cathāll
Utente di ALTO livello - Moderatore Fantacalcio

Ruota


Regione: Puglia
Cittā: Corato


Inserito il - 18/05/2005 : 23:14:14  Mostra Profilo  Visita l'Homepage di Cathāll  Clicca per vedere l'indirizzo MSN di Cathāll  Invia a Cathāll un messaggio Yahoo! Invia a Cathāll un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da pinux

Citazione:
Messaggio inserito da genius

ehm... sai ke č possibile passare dei parametri ai programmi?... io nn ho visto i programmi di mencar ma dato ke mi hai parlato di argc ed argv, e di nome di file, credo ke il nome del file lo prenda in input al lancio del programma...fammi sapere: c'č qualke parte del programma in cui sn usati proprio queste 2 variabili?



ecco la parte che differenzia il main di mencar dal mio:

int main(int argc, char *argv[])
{
char* filename = argv[1];


il resto č pressocchč tutto uguale, tranne ovvimante la if che č:
if ((gram_file = fopen(filename, "r"))== NULL)

quello che nn riesco a capire, č dove dichiarare che il file da cui dovrō caricare le produzioni č mygramm.txt

grazie



Quando lanci il programma, se non erro.
ARGV č proprio l'argomento specificato da riga di comando. Questo viene passato al Main che lo memorizza come nome del file e lo apre tramite l'istruzione contenuta nell'IF.

Cataldo - http://cathall.blogspot.com - http://www.flickr.com/photos/cataldo-it/



Torna all'inizio della Pagina

pinux
Utente Mamone

pinux2


Regione: Puglia


Inserito il - 18/05/2005 : 23:23:14  Mostra Profilo  Visita l'Homepage di pinux Invia a pinux un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da Cathāll Š
Quando lanci il programma, se non erro.
ARGV č proprio l'argomento specificato da riga di comando. Questo viene passato al Main che lo memorizza come nome del file e lo apre tramite l'istruzione contenuta nell'IF.



allora.. il mencar dice:
int main(int argc, char *argv[])
Tali parametri sono utili per utilizzare il programma di lettura delle grammatiche a linea di commando. Per esempio, se il codice sorgente viene tradotto nel programma eseguibile gr.exe, si potrā specificare il nome del file contenente la grammatica con il seguente comando
gr nomefile
per esempio:
gr mygrammar.txt
Per acquisire il nome del file specificato nella linea di comando, la funzione main dovrā avere i parametri specificati nel modo precedentemente descritto.
Il significato dei parametri č il seguente:
#8722; argc specifica il numero di parametri specificati nella linea di comando, incluso il nome del programma eseguibile;
#8722; argv č un puntatore ad un array di stringhe. Ciascun elemento dell’array contiene un parametro specificato nella linea di comando, incluso il nome del file eseguibile.
Cosicché, per l’esempio precedente, argv[0] č “gr”, mentre argv[1] č
“mygrammar.txt”
Nel programma principale si potrā dunque dichiarare una variabile locale, di tipo stringa (char*) valorizzata ad argv[1], cosė da contenere il nome del file da leggere.
Se per errore il nome del file non č stato specificato, la variabile locale avrā valore nullo.


ecco... ho capito che devo specificare il nome del file.. ma dove??
inserendo gr mygrammar.txt mi da solo errore, poiche gr nn č riconosciuto dal compilatore...

fatemi capire.. sono io che nn ho capito un ca**o?





Modificato da - pinux in data
Torna all'inizio della Pagina

Cathāll
Utente di ALTO livello - Moderatore Fantacalcio

Ruota


Regione: Puglia
Cittā: Corato


Inserito il - 18/05/2005 : 23:33:27  Mostra Profilo  Visita l'Homepage di Cathāll  Clicca per vedere l'indirizzo MSN di Cathāll  Invia a Cathāll un messaggio Yahoo! Invia a Cathāll un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da pinux
fatemi capire.. sono io che nn ho capito un ca**o?



Direi di si
Innanzitutto perchč non capisco xkč qua stai e su MSN , no..
Ma a parte questo, tu compili il sorgente di Grammar Reader e dovresti avere GR.EXE. A quel punto da riga di comando scrivi

GR NomeGrammatica.txt e dovrebbe andare.

Cataldo - http://cathall.blogspot.com - http://www.flickr.com/photos/cataldo-it/



Torna all'inizio della Pagina

genius
dott. ing. cav. ...FN

Genio


Regione: Puglia
Prov.: Bari
Cittā: Molfetta - Caput Mundi


Inserito il - 19/05/2005 : 08:30:13  Mostra Profilo  Visita l'Homepage di genius  Clicca per vedere l'indirizzo MSN di genius  Invia a genius un messaggio Yahoo! Invia a genius un Messaggio Privato  Rispondi Quotando
allora... innanzitutto č proprio quello ke ti avevo detto nel mio precedente post, cmq apparte questo... per poter utilizzare il tuo programma da liena di comando hai 2 opzioni:

facile:
da console di sposti nella directory dove si trova il tuo programmino e dai il comando

gr mygram.txt (assicurandoti ke questo file sia nella stessa directory del tuo programma, se nn č cosė allora scrivi il path completo del tuo txt)

inutilmente contorto:
aggiungi il path del tuo programmino alla variabile d'ambiente PATH del tuo S.O. e puoi lanciarlo da dove ti pare senza ke ti venga restituito l'errore ke hai riportato.

spero di esserti stato di aiuto

"...e se non hai morale
e se non hai passione
se nessun dubbio ti assale
perché la sola ragione che ti interessa avere
č una ragione sociale
soprattutto se hai qualche dannata guerra da fare
non farla nel mio nome
non farla nel mio nome
che non hai mai domandato la mia autorizzazione
se ti difenderai non farlo nel mio nome
che non hai mai domandato la mia opinione..."

Un blog farlocco
Torna all'inizio della Pagina

pinux
Utente Mamone

pinux2


Regione: Puglia


Inserito il - 19/05/2005 : 13:01:13  Mostra Profilo  Visita l'Homepage di pinux Invia a pinux un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da genius

allora... innanzitutto č proprio quello ke ti avevo detto nel mio precedente post, cmq apparte questo... per poter utilizzare il tuo programma da liena di comando hai 2 opzioni:

facile:
da console di sposti nella directory dove si trova il tuo programmino e dai il comando

gr mygram.txt (assicurandoti ke questo file sia nella stessa directory del tuo programma, se nn č cosė allora scrivi il path completo del tuo txt)

inutilmente contorto:
aggiungi il path del tuo programmino alla variabile d'ambiente PATH del tuo S.O. e puoi lanciarlo da dove ti pare senza ke ti venga restituito l'errore ke hai riportato.

spero di esserti stato di aiuto



avevo ragione.. nn avevo capito un ca**o
adesso č tutto chiaro!

grazie




Torna all'inizio della Pagina

pinux
Utente Mamone

pinux2


Regione: Puglia


Inserito il - 19/05/2005 : 13:02:58  Mostra Profilo  Visita l'Homepage di pinux Invia a pinux un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da Cathāll Š

Citazione:
Messaggio inserito da pinux
fatemi capire.. sono io che nn ho capito un ca**o?



Direi di si
Innanzitutto perchč non capisco xkč qua stai e su MSN , no..
Ma a parte questo, tu compili il sorgente di Grammar Reader e dovresti avere GR.EXE. A quel punto da riga di comando scrivi

GR NomeGrammatica.txt e dovrebbe andare.



mi sono solamente complicato la vita... credevo che fosse chissā che cosa...




Torna all'inizio della Pagina

genius
dott. ing. cav. ...FN

Genio


Regione: Puglia
Prov.: Bari
Cittā: Molfetta - Caput Mundi


Inserito il - 19/05/2005 : 13:30:17  Mostra Profilo  Visita l'Homepage di genius  Clicca per vedere l'indirizzo MSN di genius  Invia a genius un messaggio Yahoo! Invia a genius un Messaggio Privato  Rispondi Quotando
Citazione:
Messaggio inserito da pinux

avevo ragione.. nn avevo capito un ca**o
adesso č tutto chiaro!

grazie



č sempre un piacere...

"...e se non hai morale
e se non hai passione
se nessun dubbio ti assale
perché la sola ragione che ti interessa avere
č una ragione sociale
soprattutto se hai qualche dannata guerra da fare
non farla nel mio nome
non farla nel mio nome
che non hai mai domandato la mia autorizzazione
se ti difenderai non farlo nel mio nome
che non hai mai domandato la mia opinione..."

Un blog farlocco
Torna all'inizio della Pagina

rel
Utente assiduo

aa



Inserito il - 20/05/2005 : 13:03:00  Mostra Profilo  Visita l'Homepage di rel Invia a rel un Messaggio Privato  Rispondi Quotando
E cmq Mencar spiega sempre tutto per bene a lezione! Quindi spezziamo una lancia (ma anche un braccio, una gamba..) in suo favore!
Torna all'inizio della Pagina

gym83s
Utente Estremo


Regione: Puglia
Prov.: Foggia
Cittā: Trinitapoli


Inserito il - 06/06/2005 : 21:41:24  Mostra Profilo  Visita l'Homepage di gym83s Invia a gym83s un Messaggio Privato  Rispondi Quotando
ragazzi anke io sono entrato nel fantastico e coinvolgente mondo del gramma reader (...............)
ho cominciato a studiare le dispende ed anke il codice per piacere mi fareste l'esempio di alcuni file txt che posso usare per testare il programma? (gr.c)??
grazie...
Torna all'inizio della Pagina

gym83s
Utente Estremo


Regione: Puglia
Prov.: Foggia
Cittā: Trinitapoli


Inserito il - 07/06/2005 : 12:08:36  Mostra Profilo  Visita l'Homepage di gym83s Invia a gym83s un Messaggio Privato  Rispondi Quotando
ragazzi come mai qualsiasi file metto nel grammar reader mi dice
"nome file non specificato"??? vi prego fornitemi qualke file o spiegazione....help me...!!!


Torna all'inizio della Pagina

gym83s
Utente Estremo


Regione: Puglia
Prov.: Foggia
Cittā: Trinitapoli


Inserito il - 07/06/2005 : 18:41:30  Mostra Profilo  Visita l'Homepage di gym83s Invia a gym83s un Messaggio Privato  Rispondi Quotando
sono riuscito a capire qualcosa di come funziona il grammar reader,ma ora ho problemi per implementare le funzioni che controllano se la grammatica č context free etc etc

qualcuno lo ha giā fatto?? lo puō postare???
please....help.....
Torna all'inizio della Pagina

gym83s
Utente Estremo


Regione: Puglia
Prov.: Foggia
Cittā: Trinitapoli


Inserito il - 08/06/2005 : 15:31:49  Mostra Profilo  Visita l'Homepage di gym83s Invia a gym83s un Messaggio Privato  Rispondi Quotando
ragazzi scusate...ancora una volta.....
sono riuscito a capire qualcosa del grammar reader ed ho implementato la funzione per vedere se č o non č CF.
Cmq al momento dell'esecuzione c'č qualcosa che non va...
mi dice sempre la stessa cosa e non ho capito perchč...
per favore lo potrebbe controllare qualcuno??ci vogliono 5 secondi...


Allegato: grcf.zip
2,39 KB
Torna all'inizio della Pagina

rat86
Utente medio


Regione: Puglia
Prov.: Bari
Cittā: Sannicandro di Bari


Inserito il - 08/06/2005 : 18:13:44  Mostra Profilo  Visita l'Homepage di rat86 Invia a rat86 un Messaggio Privato  Rispondi Quotando
modifica cosi il main..............................
avevi sbagliato l'aperuta del file
nota tu stesso le differenze e capirai
---------------------------------------------------------------

int main(int argc, char *argv[])
{
char* filename = argv[1];
FILE* gram_file;
Grammar grammar;
/* apertura del file contenente la grammatica */
gram_file = fopen(filename,"r");
if (gram_file == NULL)
{
printf("nome di file errato\n");
system ("pause");
return -1;
}


.......................................................etc
Torna all'inizio della Pagina

Marketto
Utente medio


Regione: Puglia
Prov.: Ba
Cittā: Bari


Inserito il - 08/06/2005 : 22:08:09  Mostra Profilo  Clicca per vedere l'indirizzo MSN di Marketto Invia a Marketto un Messaggio Privato  Rispondi Quotando
Raga, vi allego il mio sorgente del grammar reader...non riesco a farlo girare...c'č un errore...aiutatemi...sto impazzendo...mi dice "nome file non specificato"!!
Help me!!
Grazie a tutti coloro che mi saranno d'aiuto!!

Allegato: AcquisGramm.rar
1,59 KB

Marco
Visitate il mio blog: http://www.cambridgetime.splinder.com
Torna all'inizio della Pagina

gym83s
Utente Estremo


Regione: Puglia
Prov.: Foggia
Cittā: Trinitapoli


Inserito il - 09/06/2005 : 00:06:10  Mostra Profilo  Visita l'Homepage di gym83s Invia a gym83s un Messaggio Privato  Rispondi Quotando
Rat 86 il problema forse non č quello che hai capito tu, in pratica mi legge la grammatica ma mi dice sempre che č context free, anke se non č..non riesco a capire il perchč.

cmq Marketto ho visto il tuo file, alla fine č uguale al mio, prendi da lė le correzioni (o almeno...quelle che ti servono)

HELPATEMI per quest'ultima cosa che non riesco a fare....per favore
ciao
Torna all'inizio della Pagina

gym83s
Utente Estremo


Regione: Puglia
Prov.: Foggia
Cittā: Trinitapoli


Inserito il - 09/06/2005 : 00:52:25  Mostra Profilo  Visita l'Homepage di gym83s Invia a gym83s un Messaggio Privato  Rispondi Quotando
ragazzi HO RISOLTO!!!

avevo sbagliato solo nel richiamare il file all'interno della procedura...

(is_contextfree(&grammar))

ciao e grazie di tutto!!!
Torna all'inizio della Pagina

Marketto
Utente medio


Regione: Puglia
Prov.: Ba
Cittā: Bari


Inserito il - 09/06/2005 : 09:19:11  Mostra Profilo  Clicca per vedere l'indirizzo MSN di Marketto Invia a Marketto un Messaggio Privato  Rispondi Quotando
Ma che correzioni devo prendere se il main č identico a quello postato da rat86?
Cmq ho provato il tuo sorgente, ma mi dā 6 errori...soluzioni?

Marco
Visitate il mio blog: http://www.cambridgetime.splinder.com
Torna all'inizio della Pagina

gym83s
Utente Estremo


Regione: Puglia
Prov.: Foggia
Cittā: Trinitapoli


Inserito il - 09/06/2005 : 11:34:03  Mostra Profilo  Visita l'Homepage di gym83s Invia a gym83s un Messaggio Privato  Rispondi Quotando
6 errori??? a me questo file...
funziona benissimo



Allegato: grcf.zip
2,37 KB
Torna all'inizio della Pagina
Pagina: di 2 Discussione Precedente Discussione Discussione Successiva  
Pagina Successiva
 Nuova Discussione  Nuovo Sondaggio Nuovo Sondaggio
 Rispondi
 Versione Stampabile Bookmark this Topic Aggiungi Segnalibro
Vai a:
Forum by laureateci.it © 2002 - 2012 Laureateci Communications Torna all'inizio della Pagina
Il DB ha risposto in 0,35 secondi.

TargatoNA.it | SuperDeejay.Net | Antidoto.org | Brutto.it | Equiweb.it | Snitz Forum 2000