Vai al contenuto

Problemi C


Messaggi raccomandati

Ragazzi, chiedo a chi di voi è più esperto di me,cosa molto facile dato che sto iniziando or ora ad entrare nel mondo della programmazzione.

io seguendo i vari tutorial sto cercando di inziare a programmare in C con il classico Hello World, solo che non mi avvine la stampa a schermo.

ho fatto una contro prova utilizzando un codice un po' più complesso(quello di una calcolatrice)e mi permette di inserire i valori ma quando deve far visualizzare il risultato non avviene nulla e il programma si chiude. Utilizzo Dev-C++ 4.9.9 sapete dirmi dove sbaglio?

il codiece che utilizzo è questo:

#include <stdio.h>

 

main ()

{

printf("Hello World!");

}

Link al commento
Condividi su altri siti

Prova cosi.

 

Muovi o copia l'eseguibile su C:\ non quindi in una cartella secondaria ma in quella principale.

Vai su start e quindi esegui. Nella finestra che appare scrivi cmd e premi invio.

Appare la finestra di console con caratteri bianchi su fondo nero.

Da linea comando (dopo il prompt) scrivi "cd c:\" (senza le virgolette!).

Scrivi il nome dell'eseguibile (puoi omettere il .exe) e vedi cosa succede.

 

Se ti sai muovere con i vecchi comandi DOS puoi anche non spostare l'eseguibile e andarci con il comando cd.

Link al commento
Condividi su altri siti

allora il nome l'ho ricontrollato + di una volta,

quando apro la finestra del dos con il omando cmd mi veine fuori questo :

"Microsoft Windows XP [version 5.1.2600]

<C> Copyright 1985-2001 Microsoft Corp.

 

D:\documents and settings\casa> "

sia che dopo scrivo cd c:\hello world

o che scrivo cd d:\hello world

lui non me lo trova.

questo invece è il sorgente della calcolatrice

 

#include <stdio.h>

#include <stdlib.h>

 

int main()

{

int somma;

int num1 = 0, num2 = 0;

 

printf("Inserisci il primo valore: ");

scanf("%d", &num1);

 

printf("Inserisci il secondo valore: ");

scanf("%d", &num2);

 

somma = num1 + num2;

 

printf("La somma dei due numeri e' la seguente: %d", somma);

 

return 0;

}

 

a me x quel poco che so di teoria,visto che nn ho modo di testare la pratica x ora mi sembra che il comando di stampa ce l'abbia.

Link al commento
Condividi su altri siti

Come ho scritto prima devi spostare l'eseguibile nella cartella C: principale. Il percorso del tuo file dovrebbe essere quindi C:\nometuoprogramma.exe

 

A questo punto, una volta aperta la finestra dos, scrivi "cd \" e invio. CD sta per Change Directory cioè Cambia Cartella per cui non può lanciare il programma.

Quindi scrivi "nometuoprogramma" e invio.

 

In alternativa puoi anche scrivere direttamente "C:\nometuoprogramma"

 

Non scambiare \ con / perchè non funziona. Il segno \ separa le varie cartelle nel mondo Dos/windows mentre il segno / vale per il mondo Unix e derivati, come il linux cui si aggiunge anche i percorsi nelle cartelle web perchè originariamente sviluppati su macchine Unix.

 

Ovviamente puoi non spostare l'eseguibile e lanciarlo dalla finestra dos scrivendo tutto il percorso del file. E' più complicato ma fattibile.

 

Altra alternativa che uso io molto comoda. Installa "Command Prompt Here" (cerca su google), quindi con explorer ti sposti nella cartella dove si trova l'eseguibile, premi con il tasto destro nella cartella e fra le tante opzioni compare... Command Prompt Here.. Ti si apre una finestra dos direttamente nella cartella in cui ti trovi. Così puoi fare tutti gli esperimenti che vuoi.

 

Per quanto riguarda la calcolatrice il comando di stampa in effetti c'è.

Io sospetto però che tu lanci la calcolatrice cliccandoci sopra invece che da linea di comando. In questo caso subito dopo la stampa il sistema chiude la finestra dos e tu ovviamente non sei così rapido da leggere il risultato.

Link al commento
Condividi su altri siti

scusa non ho scritto una cosa prima.

io ho l'hd partizionato in 2. e la partizione su cui lavoro ha tutto installato su D:\

comunque io seguo la tua procedura, apro il prompt, scrivo cd\ ,mi viene fuori D:\>, io scirvo il nome del programma,e lui mi dice che hello............................

i puntini stanno asd indicare la mia immensa stupidità  dato che mentre ti stavo scrivendo mi è venuto in mente del xkè non andava...... scrivevo il nome staccato e quindi non me lo riconosceva, dato che lui prendeva in esame solol la parola hello e mi diceva che nn era riconusciuto come comando....comunque ora va....scusa del tempo che ti ho fatto perdere e grazie mille dell'aiuto misteryellow

Link al commento
Condividi su altri siti

Ciao!

scusatemi se rispondo ora, ma il tuo codice non è sbagliato, anzi è correttissimo!!!

semplicemente hai dimenticato o non sai alcune cose...

Alcuni dos di windows quando si avvia un exe esso si termina automaticamente, intendo che arrivato alla fine si chiude da solo; ma per fortuna c'è la soluzione, quando includi le librerie, includi anche <conio.h>

e poi prima di return 0; scrivi getch(); è una funzione inclusa in conio.h simile a scanf, ma solitamente utilizzata per far sì che non si chiuda il programma da solo, ma premendo invio; praticamente blocca l'applicazione nel punto dichiarato finchè non è premuto invio.

oppure più professionale la funzione, contenuta in stdlib.h(quindi da includere), system("pause"); uguale a quella di prima ma printfa premere un tasto per continuare...

Poi, scrivendo Hello World non dovrebbe darti nessun errore... dovrebbe scriverlo normalmente...

spero di averti aiutato... mistergreen

Link al commento
Condividi su altri siti

  • 8 mesi dopo...
  • 3 settimane dopo...
per tenere la finestra aperta bisogna includere la libreria iostream. esempio:

#include <iostream>

main()

{

printf("hello!");

system("pause");

}

 

 

prova!

 

Apparte il fatto che è un oscenità  assoluta, iostream è una "libreria" del C++ e mischiare codice di C col C++ è una cosa inguardabile, e poi è altamente fuori standard C, il main del C è di tipo int e richiede il return, come IDE per sviluppare programmi in C/C++ usate Code::Blocks(e free e usa il compilatore gcc) e abbandonate lo stravecchio Dev.

Link al commento
Condividi su altri siti

  • 1 mese dopo...

Crea un account o accedi per lasciare un commento

Devi essere un membro per lasciare un commento

Crea un account

Iscriviti per un nuovo account nella nostra community. È facile!

Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.

Accedi Ora

Giochi in Uscita



  • Community Hive Community Hive

    Community Hive allows you to follow your favorite communities all in one place.

    Follow on Community Hive
  • Utenti

    Non ci sono membri da mostrare

×
×
  • Crea Nuovo...