|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Member
Iscritto dal: Apr 2005
Città: Prov. di Torino
Messaggi: 164
|
[C] Come faccio ad eseguire i programmi?
Buongiorno a tutti. Mi scuso fin da subito per la mia ignoranza in fatto di Linux in generale, ma è da poco che ho fatto il grande salto e non sono ancora tanto abituato al nuovo ambiente. Comunque per il momento mi sto trovando alla grande..
A parte ciò, in Windows usavo per fare qualche programmino CodeBlocks, ma non è che mi piaceva tantissimo. Qui su Ubuntu, ho visto che c'è GCC che compila il programma, però facendo compilare ad esempio Codice:
#include <stdio.h> #define EOL '\n' int main() { int totR = 0; int xc; while ((xc=getchar()) != EOF) { if(xc==EOL) totR++; } printf("In input ci sono %d righe\n", totR); return 0; } Codice:
gcc contaR_2.c E in generale, qualcuno mi può spiegare come si usa GCC?
__________________
IMPOSSIBLE IS NOTHING |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Così ti crea un file chiamato a.out.
Per decidere tu il nome: gcc sorgente.c -o nomeeseguibile Per eseguire il comando: ./nomeseguibile |
![]() |
![]() |
![]() |
#3 |
Member
Iscritto dal: Apr 2005
Città: Prov. di Torino
Messaggi: 164
|
Ok, ci sono grazie.
L'unica cosa è che se appunto faccio ./contaR_2, mi parte il programma: conta quante r-R ci sono all'interno delle frasi che inserisco; però come faccio a fermare il conteggio? Perchè se faccio Ctrl+Z lo fermo e non mi fa vedere niente, Ctrl+C esco e basta...
__________________
IMPOSSIBLE IS NOTHING |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2774
|
Non ti fa vedere niente perché il programma termina. Puoi fare diverse cose: aggiungere una lettura alla fine del programma, oppure lanciare il programma da shell, oppure se sei su windows aggiungere un system("pause"); in fondo al programma (immagino ci sia anche un'equivalente unix).
|
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
|
|
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Nov 2005
Messaggi: 2774
|
Ah, allora mi sono confuso, CTRL+Z cos'era? Forse addormenta il processo? O lo mette in background? Non ricordo più...
Beh, allora semplicemente deve premere CTRL+D e poi potrebbe ricadere nel problema a cui mi riferivo prima. |
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Oct 2006
Città: milano
Messaggi: 1439
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#8 |
Senior Member
Iscritto dal: Mar 2005
Città: Morimondo city
Messaggi: 5491
|
si ctrl z è l'eof su win
__________________
Khelidan |
![]() |
![]() |
![]() |
#9 |
Member
Iscritto dal: Apr 2005
Città: Prov. di Torino
Messaggi: 164
|
Ah ecco, io sapevo che l'EOF era Ctrl+Z, ma non sapevo che ero solo in Windows. Grazie per avermi detto del Ctrl+D....
__________________
IMPOSSIBLE IS NOTHING |
![]() |
![]() |
![]() |
#10 |
Junior Member
Iscritto dal: Jun 2008
Messaggi: 2
|
ctrl+z su Linux invia al processo il segnale SIGSTOP, quindi non termina ma viene semplicemente sospeso. Si può riavviare inviandogli il segnale SIGCONT (ad esempio con kill -SIGCONT).
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:38.