Neo programmatore

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Scrivi risposta
Avatar utente
Software-Bloat
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1022
Iscrizione: martedì 29 aprile 2008, 9:05
Contatti:

Neo programmatore

Messaggio da Software-Bloat »

Ciao ragazzi,
sto iniziando a studiare C e come ambiente ho installato codeblocks.
è ben fatto e mi piace molto (anche se non è che lo abbia utilizzato moltissimo...xD).
ci sono un paio di domande che vorrei porvi però:
  • una volta che ho compilato il programma,posso eseguirlo solo tramite terminale??
  • se volessi passare il programma già compilato ad un utente windows,c'è un modo per renderlo .exe?
Scusate per i termini o per le domande che probabilmente sono stupide...
Ma sono nuovissimissimo nel campo della programmazione ^^


Chiedo scusa nel caso avessi sbagliato sezione
Grazie mille
io sono ciò che sono per merito di ciò che siamo tutti
Blog
Avatar utente
Berghem
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 2265
Iscrizione: giovedì 14 aprile 2005, 22:28
Località: Dalmen

Re: Neo programmatore

Messaggio da Berghem »

1) per lanciare da shell il file eseguibile ti posizioni nella cartella e scrivi ./nomeeseguibile
2) Non puoi passare l'eseguibile ad un utente windows, perchè è compilato sotto linux.... cosi come non puoi far girare excel sotto linux (salvo emulatori win), perchè è compilato sotto windows.
quello che puoi fare è passare i sorgenti e ricompilarli sotto win (attento che in questo caso devi scrivere codice senza usare api di sistema)
Avatar utente
Software-Bloat
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1022
Iscrizione: martedì 29 aprile 2008, 9:05
Contatti:

Re: Neo programmatore

Messaggio da Software-Bloat »

Berghem ha scritto: 1) per lanciare da shell il file eseguibile ti posizioni nella cartella e scrivi ./nomeeseguibile
Si quello lo sapevo ^^ infatti volevo capire se c'era un altro metodo,per esempio come il doppio click su win con il .exe
2) Non puoi passare l'eseguibile ad un utente windows, perchè è compilato sotto linux.... cosi come non puoi far girare excel sotto linux (salvo emulatori win), perchè è compilato sotto windows.
quello che puoi fare è passare i sorgenti e ricompilarli sotto win (attento che in questo caso devi scrivere codice senza usare api di sistema)
potresti dirmi cosa significa "api di sistema"??  :-[
io sono ciò che sono per merito di ciò che siamo tutti
Blog
Avatar utente
Berghem
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 2265
Iscrizione: giovedì 14 aprile 2005, 22:28
Località: Dalmen

Re: Neo programmatore

Messaggio da Berghem »

*tux ha scritto: Si quello lo sapevo ^^ infatti volevo capire se c'era un altro metodo,per esempio come il doppio click su win con il .exe
Si, una volta che hai creato l'eseguibile, se fai tasto destro, sul tuo desktio, puoi creare un lanciatore...
potresti dirmi cosa significa "api di sistema"??  :-[
Che non vai ad usare il sistema operativo, ad esempio in C c'è il comando system("nomecomando"); se scrivi sotto linux un codice con System("ls"); vedrai l'elenco dei file, ma non potrai pretendere che funzioni sotto windows...
Avatar utente
kelev
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1766
Iscrizione: giovedì 4 settembre 2008, 0:27

Re: Neo programmatore

Messaggio da kelev »

Quoto Berghem
"E alla fine sei da solo, dove vai, con chi brindi?"
lurebu
Prode Principiante
Messaggi: 147
Iscrizione: martedì 25 marzo 2008, 22:45

Re: Neo programmatore

Messaggio da lurebu »

1)
C'è un apposito flag nella configurazione in cui indichi che è un applicazione con GUI o Console.
La differenza non è proprio così netta, fatto sta che se spunti GUI, quando per esempio lo lanci da codeblocks non apre la console.

Tieni anche presente che la console .. per un debug gretto ... è veramente comoda ;)
Avatar utente
Software-Bloat
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1022
Iscrizione: martedì 29 aprile 2008, 9:05
Contatti:

Re: Neo programmatore

Messaggio da Software-Bloat »

lurebu ha scritto: 1)
C'è un apposito flag nella configurazione in cui indichi che è un applicazione con GUI o Console.
La differenza non è proprio così netta, fatto sta che se spunti GUI, quando per esempio lo lanci da codeblocks non apre la console.

Tieni anche presente che la console .. per un debug gretto ... è veramente comoda ;)
cosa significa debug gretto??? xDD :P
io sono ciò che sono per merito di ciò che siamo tutti
Blog
Avatar utente
Guiodic
Accecante Asceta
Accecante Asceta
Messaggi: 28474
Iscrizione: martedì 24 aprile 2007, 15:28
Località: Roma
Contatti:

Re: Neo programmatore

Messaggio da Guiodic »

Se fai un programma a riga di comando, ovviamente devi avviarlo da riga di comando. Al limite, puoi creare un lanciatore che apre automaticamente il terminale ed esegue il programma dentro

Codice: Seleziona tutto

gnome-terminal --command=/percorso/dell/eseguibile/nomefileeseguibile
Avatar utente
Software-Bloat
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1022
Iscrizione: martedì 29 aprile 2008, 9:05
Contatti:

Re: Neo programmatore

Messaggio da Software-Bloat »

ho provato a creare un lanciatore (tramite gui però)...ma non si apre niente... :-\
io sono ciò che sono per merito di ciò che siamo tutti
Blog
mx92
Prode Principiante
Messaggi: 218
Iscrizione: domenica 7 ottobre 2007, 9:08
Località: Molfetta (Ba)

Re: Neo programmatore

Messaggio da mx92 »

su windows alla fine del programma devi anche scrive:

Codice: Seleziona tutto

system("PAUSE");
altrimenti la finestra del programma si chiude appena termina l'ultima istruzione e quindi nella maggiorparte dei casi ti impedisce di vedere per esempio i risultati di un calcolo o un'operazione.
Avatar utente
Software-Bloat
Entusiasta Emergente
Entusiasta Emergente
Messaggi: 1022
Iscrizione: martedì 29 aprile 2008, 9:05
Contatti:

Re: Neo programmatore

Messaggio da Software-Bloat »

mx92 ha scritto: su windows alla fine del programma devi anche scrive:

Codice: Seleziona tutto

system("PAUSE");
altrimenti la finestra del programma si chiude appena termina l'ultima istruzione e quindi nella maggiorparte dei casi ti impedisce di vedere per esempio i risultati di un calcolo o un'operazione.
no ma mi succede su linux... :-\
io sono ciò che sono per merito di ciò che siamo tutti
Blog
Avatar utente
mous16
Imperturbabile Insigne
Imperturbabile Insigne
Messaggi: 3940
Iscrizione: mercoledì 25 ottobre 2006, 15:51
Sesso: Maschile

Re: Neo programmatore

Messaggio da mous16 »

allora alla fine metti un

Codice: Seleziona tutto

scanf("%*c");
se il programma è fatto bene e il buffer in lettura è vuoto, arrivato alla fine aspetterà che tu prema INVIO prima di uscire
Pagine personali: Forum Ubuntu-it - Wiki Ubuntu-it - Launchpad
Solo/mous16
lurebu
Prode Principiante
Messaggi: 147
Iscrizione: martedì 25 marzo 2008, 22:45

Re: Neo programmatore

Messaggio da lurebu »

*tux ha scritto:
lurebu ha scritto: 1)
C'è un apposito flag nella configurazione in cui indichi che è un applicazione con GUI o Console.
La differenza non è proprio così netta, fatto sta che se spunti GUI, quando per esempio lo lanci da codeblocks non apre la console.

Tieni anche presente che la console .. per un debug gretto ... è veramente comoda ;)
cosa significa debug gretto??? xDD :P
Che mandi messaggi direttamente alla console.
Qualcosa come

Codice: Seleziona tutto

std::cerr << "All Done !";
  ;)

In allegato la l'immagine della combo con le opzioni (Tra le quali GUI Application), nota che sotto c'è una check box che indica di fermarsi quando il programma termina (Pause when execution end)... chiaramente è abilitata solo se scegli dalla combo 'Console Application'.

Ci si accede dal menu Project -> Properties, poi dalla finestra' il tab Build Targhets.

Spero di essere stato d'aiuto.

Sciauz
Allegati
Schermata-Project-targets options.png
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 6 ospiti