Newsgroup: it.comp.lang.c
Titolo: I/O

Secondo voi perché questo stralcio di codice non funziona corretamente?:
pf=fopen(p,"w");
   while (getxkey()!=0x013){
putc(getc(stdin),pf);}
   fclose(pf);

Secondo voi perché questo stralcio di codice non funziona corretamente?:
Non vedo il corpo di getxkey() ---> non posso giudicare.
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
---------------------------------------------

 ---------------------------------------------

il getxkey cosě com'é funziona.....é il resto che non funziona
Se non vedo il codice completo del programma, non posso aiutarti.
Mi spiace.


 ---------------------------------------------
L'idea é salvare alla pressione di ctrl+s il testo scritto sullo stream
stdin

Si, ma bisognerebbe vedere come è implementata getxkey, che non è
standard...
--
Marco Iannaccone
"Questa è una nave moderna, ma ha un nome antico e glorioso...
Trattala come una signora e ti riporterà sempre a casa"

stdin
Sorry ! mi e' ancora meno chiaro di prima ! ;)


 ha scritto nel messaggio
news:890ro5$bnt$1...@nslave2.tin.it...

int getxkey(void)
segnala la pressione di un tasto sulla tastiera e restituisce il valore di
detto tasto....0x013 é il codice di pressione dei tasti combinati ctrl+s.
Fondamentalmente vorrei ottenere un effetto "editor"....scrivi un testo e
salvalo quando premo ctrl+s.
getxkey non é standard lo so! E' implementato sulle librerie di djgpp.
Quello che ottengo é il salvataggio di una parte di quello che ho
scritto...manca la parte iniziale e quella finale (qualche carattere di là e
qualcun altro di là).
Spero di essere stato più chiaro e scusatemi!

 Non vedo il corpo di getxkey() ---> non posso giudicare.
E' un modo simpatico per dire che non e' una funzione standard, o anche tu ti
prepari a giovedi' grasso? :) :)
Il codice non funziona in quanto la funz. getxkey() e' definita solo per
tastiere settate con il set di caratteri  americano.
Ivan Molella

tastiere settate con il set di caratteri  americano.
Io non ho idea di che corpo abbia getxkey(), non mi sto preparando a
nessun giovedi' grasso. Se si chiede di spiegare perche' un programma
non funziona, che se ne dia anche la possibilita' di farlo.



getxkey() e' una funzione non standard messa a disposizione dal compilatore
djgpp(almeno la versione che utilizzo io).Basta vedere l'help per farsi un'idea di
cosa la funzione debba fare :-)
Ivan Molella

cosa la funzione debba fare :-)
Hai dimenticato un particolare : mi sembra chiaro che se non so che
getxkey() e' supportata con il compilatore djgpp, non posso neanche
andare a consultare l'help !!!


 andare a consultare l'help !!!
Dai post precedenti mi sembrava che tu avessi installato djgpp sul tuo pc.
Ivan Molella

Dai post precedenti mi sembrava che tu avessi installato djgpp sul tuo pc.
Allora, vediamo di chiarirci !
abacuc chiede "perche' questo codice non funziona?"
non si conosce il compilatore che usa (non lo specifica)
quindi
non si puo' andare a cercare la documentazione che serve.
Anche se io uso il djgpp non e' detto che usi getxchar()
Spero che questa volta il concetto sia chiaro.



Un po di elasticita'... :)
Ivan Molella

Un po di elasticita'... :)
Piu' elastico di un thread che si estende a dismisura e inutilmente,
proprio non si puo' fare.


 proprio non si puo' fare.
Intendevo elasticita' mentale :)
Ivan Molella

 ha scritto nel messaggio
news:38B6A369...@tiscalinet.it...

A me non pare giusto che discutiate per un mio post!!!
Io chiedevo solo come avere un finestra su cui scrivere un testo di
lunghezza qualunque e poi, quando smetto, premere una composizione di tasti
(es .ctrl+s o altri..n.b. questo lo fa il getxkey che svolge egregiamente il
suo lavoro!!) e fare uscire un menu con le varie scelte:
salva
cancella
correggi
etc.
come in un semplice editor...in realtà vi chiedevo quale fossero le funzioni
più adatte a fare questo (prendere un testo battuto da tastiera e poi
metterlo in un file)!

Dovresti usare getxkey() per gli input che vuoi inserire,senza utilizzare altre
funzioni come
getc() che bufferizzano il tuo input.
Ivan Molella