PDA

View Full Version : Programmazione in C sotto linux...


lnessuno
09-01-2003, 14:25
lo so che sotto linux si può programmare in C senza problemi! :D quello che volevo sapere, però, è se per caso conoscete un bel programmino tipo il TurboC della borland, tutto bello e integrato... con l'editor e il builder/debugger tutto insieme

avete qualche consiglio? emacs non mi piace molto... anzi non mi piace per niente :|

Kernel Panic!!
09-01-2003, 14:31
come ide uso anjuta... molto bello

Kernel Panic!!
09-01-2003, 15:22
scusa, intendevo "uso" :D

hilo
09-01-2003, 15:40
Originally posted by "lnessuno"

lo so che sotto linux si può programmare in C senza problemi! :D quello che volevo sapere, però, è se per caso conoscete un bel programmino tipo il TurboC della borland, tutto bello e integrato... con l'editor e il builder/debugger tutto insieme

avete qualche consiglio? emacs non mi piace molto... anzi non mi piace per niente :|

per c++ c'e' kylix 3 (si puo' utilizzare per pascal e c++, forse anche c) e' un mattone (parecchi mb) versione personal scaricabile dal sito borland (forse allegato in qualche rivista) : probabilmente e' quello che somiglia di piu' a quello che cerchi;
ci sono poi glade e kdevelop (ma con questo la creazione dei form e' piuttosto macchinoso) questi pero' non hanno debugger integrato.

Kernel Panic!!
09-01-2003, 15:50
ma è liberamente scaricabile? ho visto che bisogna registrarsi x scaricarlo...

gokan
09-01-2003, 18:17
Originally posted by "Kernel Panic!!"

ma è liberamente scaricabile? ho visto che bisogna registrarsi x scaricarlo...
Si ti devi registrare,poi ti danno delle product key (le mandano alla tua email, con il relativo link doeve puoi scaricare il programma..così funzionava fino a qualche tempo fa) :)

gokan
09-01-2003, 18:22
Originally posted by "lnessuno"

lo so che sotto linux si può programmare in C senza problemi! :D quello che volevo sapere, però, è se per caso conoscete un bel programmino tipo il TurboC della borland, tutto bello e integrato... con l'editor e il builder/debugger tutto insieme

avete qualche consiglio? emacs non mi piace molto... anzi non mi piace per niente :|
Io ho sempre usato un buon editor (che ti evidenzi le parole chiavi del linguaggio) come kate. Poi da console facevo:
make nomefile //dove nomefile è il file sorgente in C

E se avevo commesso qualche errore di sintassi vengo avvertito da gdb (che mi diceva a quale linea sta l'errore e via dicendo)

lnessuno
09-01-2003, 19:20
Originally posted by "gokan"


Io ho sempre usato un buon editor (che ti evidenzi le parole chiavi del linguaggio) come kate. Poi da console facevo:
make nomefile //dove nomefile è il file sorgente in C

E se avevo commesso qualche errore di sintassi vengo avvertito da gdb (che mi diceva a quale linea sta l'errore e via dicendo)


non è esattamente quello che cercavo, ma va benissimo comunque, thx!! :)

lnessuno
09-01-2003, 19:29
scusa ma... ho un problema: ho fatto una prova con un "programmino" semplice semplice (open source, ora posto il codice :D), però mi da risultati strani...


#include <stdio.h>
char text;

main()
{
printf ("inserisci il tuo nome\n");
scanf ("%c",&text);
printf ("Ciao %d\n",text);
}




però compilando ed eseguendo guarda cosa salta fuori:


[lele@localhost lele]$ ./prova
inserisci il tuo nome
blaah
Ciao 98

lnessuno
09-01-2003, 19:37
Originally posted by "lnessuno"



scanf ("[size=18]%c[/size]",&text);
printf ("Ciao [size=18]%d[/size]\n",text);





che cinghiale che sono... :rolleyes: :D

Kernel Panic!!
09-01-2003, 19:38
prova così:

#include <stdio.h>

int main() {
char *text; /* char è un carattere, a te serve una stringa */
printf ("inserisci il tuo nome\n");
scanf ("%s",text); /* %s è per le stringhe */
printf ("Ciao %s\n",text);
return 0;
}

lnessuno
09-01-2003, 19:42
capito, a parte la storia del %s (il bello è che ho sbagliato in 2 modi diversi :D) non avevo messo l'asterisco prima di "text" :|

a dire la verità non sapevo neanche che si dovesse mettere... :eek:

lnessuno
09-01-2003, 19:47
anzi no, ho anche un altro problema... hai voglia di spiegarmi la differenza fra mettere
char *text; sopra la funzione e main, e al suo interno? :confused:

nel primo caso mi da (null), come hai messo te invece funziona bene... ma non ho capito il perchè :|

lnessuno
09-01-2003, 19:50
no un momento... c'è qualcosa che non mi convince :|

se metto come nome ToX va tutto bene, se metto Emanuele mi da segmentation fault :eek:

lnessuno
09-01-2003, 19:53
ci sono, mi è bastato mettere

char *text[20];


:p


e ora funziona anche se metto il char prima della funzione main, e senza asterisco :)

Kernel Panic!!
09-01-2003, 19:54
forse char text[] è + leggibile :p (evidenzia meglio il fatto che una stringa è un array di char)

VICIUS
09-01-2003, 19:59
di solito in C / C++ anzi no sempre una variabile preceduta da un asterisco sta ad indicare che quella variabile non è altro che unpuntatore alla memoria.

Kernel Panic!!
09-01-2003, 20:21
con char *text[20] crei un puntatore a una stringa lunga 20 caratteri ocio
char text[20] crei una stringa da 20 caratteri (anzi, 19 visto che l'ultimo è sempre '\0' o quasi)

ilsensine
09-01-2003, 20:25
Parcheggio il thread in programmazione.

x lnessuno, senza fare troppa strada puoi provare kdevelop, è incluso in molte distribuzioni e ha una ottima interfaccia con il debugger gdb.

lnessuno
09-01-2003, 21:23
mica lo capisco sto kdevelop... già ci ho messo un'ora a trovare l'eseguibile, ora che ce l'ho non so che farmene, mi fa lo stesso uso di kwrite :p :D

ilsensine
09-01-2003, 21:26
Certo, se non impari ad usarlo anche il Borland Builder è un semplice editor di testi :D

lnessuno
09-01-2003, 21:37
dai mamma, dimmi come si fa a trovare gli errori nel codice :cry:


:sofico:

Kernel Panic!!
09-01-2003, 21:47
anche splint (parser del sorgente) è utile...