Newsgroup: it.comp.lang.c
Titolo: Programma per testare i programmi in C

Mio figlio 16enne frequenta la 3a ITIS per periti informatici ed ho
deciso di dargli una mano nello studio del linguaggio C.
Come si fa a testare gli esercizi? Ci vuole per forza il Microsoft
Visual C++ ufficialmente registrato o va OK qualche altro programma
prelevabile dalla rete?
In caso non c' č tra Voi un' anima pia ke abita dalle parti di Milano
in grado di passarmi un CD-ROM col programma giusto? Magari entro la
giornata domenicale di domani?...		;-)))
LUX

LUX
guarda ... al limite limite 
http://www.bloodshell.net
 se non erro ...
scarichi il devc++ 4 .....
oppure 
www.borland.com
 e scarichi il bc++ 5.5 ...
il tuo bambino si accontenta della riga di comando e compila da lě
ciao
Antonio

prelevabile dalla rete?
Dunque... credo che tu stia cercando un compilatore... suppongo
per piattaforma Windows (dacche' parli di Microsoft).
Dunque, un compilatore che scaricai tempo fa, ma che non ho mai provato a fondo
(dovrebbe comunque andare benissimo per gli esercizi) e' il Pacific C compiler:
http://www.htsoft.com/products/pacific.html
Se invece cerchi un compilatore gratuito per Windows...
http://www.bloodshed.net
e scarichi Dev-C++ (versione 4, se non erro)
Un compilatore ancora migliore, e piu' facilmente estendibile e configurabile,
e' DJGPP, che genera eseguibili per DOS e per Windows. Lo puoi reperire
facilmente all'indirizzo 
http://www.delorie.com
 . Dovrebbe esserci lo
ZipPicker, un'utility che ti permettera', grazie a poche piccole domande, di
scaricare tutto e solo il necessario alla tua situazione.
Per ognuno di questi tre compilatori vi e' una esauriente documentazione per
l'installazione.
Ciao
Domenico 
-- 
Domenico Barra, Brainbench C++ Master
ba...@programmazione.it
domb...@studenti.unina.it
dob...@iol.it

l'installazione.
Grazie a tutti x le preziose indicazioni!
LUX

profano...)
se é quello usato... microsoft visual c++ é un ambiente di sviluppo
con un compilatore integrato .....
Antonio

e scarichi Dev-C++ (versione 4, se non erro)
scusa se ti disturbo 1 attimo: ho scaricato ed installato Dev C++, ma
quando faccio RUN di un programmino (copiato ed incollato...) mi
compare per 1/2 secondo una skermata nera di DOS ke poi sparisce: cosa
devo fare x vedere l' output?
LUX

devo fare x vedere l' output?
Perche' una volta finito il programma ritorna al programma chiamante.
Ci sono 2 modi per risolvere:
1) prima apri una shell dos, poi lanci il programma (in questo modo 
   quando finisce il tuo programma torna al prompt del dos e vedi 
   l'output del programma)
2) aggiungi come ultima istruzione del main (prima della return 
   ovviamente) uno dei seguenti pezzi di codice:
a)Modo dipendente dall'implementazione:
    system("pause");
b)Modo indipendente dall'implementazione:
    /* Svuoti il buffer della tastiera caso mai ci fosse qualcosa 
       dentro */
    while (getchar() != '\n');
    /* ora aspetti un carattere in input, essendo sicuro che non ci 
       sia gia' qualcosa nel buffer*/
    getchar();
Nota: la sustem() richiede che sia incluso l'header stdlib.h... la
getchar() stdio.h.
Mox :)

scaricare tutto e solo il necessario alla tua situazione.
Nota: Per lanciare gli eseguibili creati con il DJGPP serve un server
DPMI se non sbaglio... che comunque ti viene fornito assieme al
compilatore.
Un'altro buon compilatore (free ovviamente) e' l'LCC-WIN32
(
http://www.cs.virginia.edu/~lcc-win32
): questo al contrario del DEV-C
e del DJGPP non si appoggia su dei porting del GCC, ma al LCC.
Anche l'LCC fornisce una IDE (se non avessi mai sentito questo termine
si tratta semplicemente di un editor di testo integrato con un
interfaccia per il compilatore).
Mox :)

compilatore.
Solo sotto DOS puro.
-- 
Andrea Laforgia - walkietalkie(at)
libero.it
"Meglio cieco che negro" (Stevie Wonder)

   ovviamente) uno dei seguenti:::::::::::::
Mah, per i semplicissimi esercizi  ke sto testando io non so se è
necessario... Sono + propenso a credere ke il Dev C++ abbia dei bachi.
D' altra parte non riesco a trovare come settarlo in modo
differente... Ora provo un altro compilatore.
LUX

differente... Ora provo un altro compilatore.
Non e' buggato il DEV-C, non e' buggato il MinGW che ci sta' sotto.
tutto dipende da come viene implementato il sisop:
- explorer deve eseguire un programma da console... allora
- apre una shell dicendogli di
- lanciare il tuo programma... quando il tuo programma lancia la
return ...
- la shall intercetta il valore di ritorno... poi non avendo altro da
fare....
- viene terminata e il controllo ritorna a
- explorer che provvede a cancellare la finestra della shell che non
serve piu'.
Se vuoi vedere l'output del tuo eseguibile devi in qualche modo
fermare il tuo programmino prima della return... con una
system("pause") che invoca il comando pause oppure simulandolo a mano
con il sistema delle getchar() che ti ho detto.
Mox


oppure prima di lanciare l'eseguibile modifichi nelle proprieta' la voce
"chiudi all'uscita", e quest'ultima parte che hai (giustamente) spiegato non
viene eseguita.
ciao
donCiccio

viene eseguita.
Scusa. le proprietà di che? In nessun menu del Dev C++ trovo un'
opzione Properties...	:-(((
Ti riferisci all' Explorer?
Poi un altro difetto ke trovo nel Dev C++ è ke non si può cambiare la
directory di default da dove si aprono i programmi...
LUX

con il sistema delle getchar() che ti ho detto.
ho provato ad aggiungere al programmino le righe ke mi hai gentilmente
dato:
/* Svuoti il buffer della tastiera caso mai ci fosse qualcosa 
       dentro */
    while (getchar() != '\n');
    /* ora aspetti un carattere in input, essendo sicuro che non ci 
       sia gia' qualcosa nel buffer*/
    getchar();
ma sul display non vedo niente lo stesso...	:-(((
LUX

o tra le istruzioni di C...
E' una funzione contenuta in stdlib.h.
semplicemente questa funzione ti permette di lanciare un comando. Nel
caso specifico la usi per lanciare il comando Pause che serve appuntoa
bloccare la schermata finche' l'utente non preme un tasto (o era
invio?).
Per il codice dovrebbe funzionare, l'unico rischio che corri e' di
dover premere piu' di una volta il tasto invio (in particolari
situazioni).
Prova a postare il codice.

Prova a postare il codice.
Te l' ho inviato via e-mail.
LUX

 >Non e' il DEC-C che devi configurare, ma explorer :)
Guarda, se vuoi provare a fare un programma semplice per il dev, fai:
1) clicca sul tasto new source file (o fai "file->new source file");
2) ti appare un listato, tipo:
-------------
    #include <iostream.h>
    #include <stdlib.h>
    int main()
    {
          system("PAUSE");
          return 0;
    }
-------------
3) siccome il source di default e' fatto per c++, basta che lo modifichi e
ci scrivi qualcosa tipo:
-------------
    #include <stdio.h>
    #include <stdlib.h>
    int main(void)
    {
          printf("Hello world!\n");
          system("PAUSE");
          return 0;
    }
------------
4) lo salvi come c source file.
5) clichhi su run.
6) vedrai scritto:
--------
    Hello world!
    Premere un tasto per continuare...
--------
7)se premi un tasto, il programma finisce.
Vabbe' sottovalutare un compilatore, ma se non riuscisse a fare un programma
tipo questo...
--
Zeppe

tipo questo...
Il problema č ke se non mi doto di un compilatore ke mi va non posso
provare a fare qualcosa di + complesso...
LUX

 Il problema è ke se non mi doto di un compilatore ke mi va non posso
