Grafica C in linux
Re: Grafica C in linux
nono funziona benissimo ^^ slo che è meno ordinato... a meno che non si usino solo all'interno di specifiche funzioni, le variabili dovrebbero sempre essere messe all'inizio... per ordine e pulizia (nel caso di modifiche anche pesanti al codice, magari non usi più variabili, e dove le vai a cancellare? all'inizio ^^)
Re: Grafica C in linux
Ho installato turbo-c .. mi da errore se dichiaro non all'inizio!! Allora il mio prof aveva ragione!! (good)
Posto l'immagine
[img width=800 height=600]http://img158.imageshack.us/img158/8263 ... atams2.png[/img]
Posto l'immagine
[img width=800 height=600]http://img158.imageshack.us/img158/8263 ... atams2.png[/img]
- simo_magic
- Rampante Reduce

- Messaggi: 9496
- Iscrizione: lunedì 18 dicembre 2006, 21:37
- Località: Piemonte
Re: Grafica C in linux
apparte che fa leggermente schifo quel compilatore...comunque...
usa almeno qualcosa di più compatibile...
tipo devc++...che oltre ad essere sotto gpl usa un port di gcc(il migliore compilatore secondo me)
detto questo...è il compilatore che non rispetta gli standard...se il tuo professore vi fa usare roba che non rispetta gli standard...bah... (mad)
usa almeno qualcosa di più compatibile...
tipo devc++...che oltre ad essere sotto gpl usa un port di gcc(il migliore compilatore secondo me)
detto questo...è il compilatore che non rispetta gli standard...se il tuo professore vi fa usare roba che non rispetta gli standard...bah... (mad)
Re: Grafica C in linux
appunto in ISO/ANSI C è permesso... e non parlo di C++...
Re: Grafica C in linux
A scuola avevamo sia devc++ sia turbo-c .. io usavo turbo-c solo xkè aveva una bella guida .. cioè quando non conoscevo il nome di una funzione o una sintassi in neanke 30 sec avevo la risposta .. cmq ke delusione sapere ke ho passato 5 anni di superiori a compilare roba in un ide non standardsimo_magic ha scritto: apparte che fa leggermente schifo quel compilatore...comunque...
usa almeno qualcosa di più compatibile...
tipo devc++...che oltre ad essere sotto gpl usa un port di gcc(il migliore compilatore secondo me)
detto questo...è il compilatore che non rispetta gli standard...se il tuo professore vi fa usare roba che non rispetta gli standard...bah... (mad)
- jepessen
- Imperturbabile Insigne

- Messaggi: 3569
- Iscrizione: lunedì 26 dicembre 2005, 11:49
- Desktop: KDevelop
- Distribuzione: Ubuntu 20.04
- Sesso: Maschile
- Località: Somma Lombardo
Re: Grafica C in linux
Mica è l'IDE non standard, ma il compilatore...
Compiz l'ha creato Chuck Norris quando ha colpito un computer con un calcio rotante.
http://www.renderosity.com/mod/gallery/ ... e=Jepessen
http://jepessen.wordpress.com/
http://www.renderosity.com/mod/gallery/ ... e=Jepessen
http://jepessen.wordpress.com/
Re: Grafica C in linux
ed in ogni caso Dev-CPP ha una guida al C/C++... con tutte le funzioni standard...
Re: Grafica C in linux
si scusa il compilatorejepessen ha scritto: Mica è l'IDE non standard, ma il compilatore...
Non la trovavo :P .. cmq adesso non mi serve più .. qua a casa ho internet e con google trovi tutto (good)ed in ogni caso Dev-CPP ha una guida al C/C++... con tutte le funzioni standard...
-
b3knight
- Prode Principiante
- Messaggi: 183
- Iscrizione: venerdì 28 aprile 2006, 17:48
- Località: Monchiero (CN)
Re: Grafica C in linux
Mi inserisco nella discussione... Ho da poco sostenuto l'esame di C all'uni ed il mio prof ha ripetuto più volte che si possono dichiarare variabili non all'inizio, ma in questi casi la compilazione NON E' GARANTITA! Cioè: funzionare magari funziona, ma soltanto grazie a un compilatore che riconosce questo errorino e lo corregge.
Qualcuno ha scritto: "quel compilatore fà schifo" (non so a quale si riferisse); forse a volte può essere utile compilare con compilatori totalmente essenziali, in modo da avere un codice sicuramente pulito e corretto.
Ricapitolando, la dichiarazione di variabili non all'inizio è una pratica diffusa, che magari funziona, ma NON rispetta le specifiche del C!
Qualcuno ha scritto: "quel compilatore fà schifo" (non so a quale si riferisse); forse a volte può essere utile compilare con compilatori totalmente essenziali, in modo da avere un codice sicuramente pulito e corretto.
Ricapitolando, la dichiarazione di variabili non all'inizio è una pratica diffusa, che magari funziona, ma NON rispetta le specifiche del C!
- simo_magic
- Rampante Reduce

- Messaggi: 9496
- Iscrizione: lunedì 18 dicembre 2006, 21:37
- Località: Piemonte
Re: Grafica C in linux
l'ho scritto io che il compilatore di turboc fa schifo...
ok ai compilatori che rispettano solo gli standard...e infatti io ho proprio consigliato quello che li rispetta tutti! gcc!!
ma non è mica scritto da nessuna parte che io sappia che la specifica ufficiale costringa a scrivere tutte le variabili all'inizio del codice...così si intasa solo la memoria se la variabile servisse solo all'interno di un blocco...
e se avessi bisogno di 2 variabili di nome "abc"?
se le dichiaro all'inizio mi si impalla il compilatore...invece se le dichiaro all'interno della funzione no ne posso dichiarare 2...
ok ai compilatori che rispettano solo gli standard...e infatti io ho proprio consigliato quello che li rispetta tutti! gcc!!
ma non è mica scritto da nessuna parte che io sappia che la specifica ufficiale costringa a scrivere tutte le variabili all'inizio del codice...così si intasa solo la memoria se la variabile servisse solo all'interno di un blocco...
e se avessi bisogno di 2 variabili di nome "abc"?
se le dichiaro all'inizio mi si impalla il compilatore...invece se le dichiaro all'interno della funzione no ne posso dichiarare 2...
-
wally67
- Scoppiettante Seguace

- Messaggi: 699
- Iscrizione: giovedì 1 marzo 2007, 15:31
- Distribuzione: xubuntu 20.04 LTS x86_64 (l'unica)
Re: Grafica C in linux
penso quindi di aver avuto un po' di ragione anche io :P
comunque grazie per aver aiutato anche me a chiarire alcuni dubbi
in merito a quanto dice simo
wally 67 (e sono tanti)
comunque grazie per aver aiutato anche me a chiarire alcuni dubbi
in merito a quanto dice simo
cosi' sembra che se uso una variabile in un blocco questa non viene allocata all' inizio della funzione. invece non e' cosi', almeno per il compilatore che ho usato io (microcontrollori freescale) di cui sono anche andato a spulciarmi l' assembler ::)ma non è mica scritto da nessuna parte che io sappia che la specifica ufficiale costringa a scrivere tutte le variabili all'inizio del codice...così si intasa solo la memoria se la variabile servisse solo all'interno di un blocco...
wally 67 (e sono tanti)
Se io do una moneta a te e tu una a me abbiamo entrambi 1 moneta;
ma se io do una idea a te e tu una a me abbiamo entrambi 2 idee.
ma se io do una idea a te e tu una a me abbiamo entrambi 2 idee.
- simo_magic
- Rampante Reduce

- Messaggi: 9496
- Iscrizione: lunedì 18 dicembre 2006, 21:37
- Località: Piemonte
Re: Grafica C in linux
no mi spiego...
non voglio nemmeno sapere come lo compila turboc o altri compilatori non standard...so solo che gcc lo compila e in output mi da 10 come è giusto che sia senza nemmeno fare un warning...perchè è tutto regolare!
Codice: Seleziona tutto
#include <stdio.h>
int main(){
int a;
a=2;
if(a==2)
{
int b;
b=10;
printf("%d",b);
}
else
{
int b;
b=5;
printf("%d",b);
}
}-
wally67
- Scoppiettante Seguace

- Messaggi: 699
- Iscrizione: giovedì 1 marzo 2007, 15:31
- Distribuzione: xubuntu 20.04 LTS x86_64 (l'unica)
Re: Grafica C in linux
forse non sono stato chiaro. dal tuo codice sembra che tu ti aspetti qualcosa del tipo:
invece probabilmente avrai
con addirittura un uso maggiore di memoria. per lo meno questo e' quello che ho visto con il compilatore della freescale
wally 67 (e sono tanti)
p.s.
pero' la prossima volta non farmi fare tutta questa fatica
Codice: Seleziona tutto
//int main() {
//int a;
push ax
//a=2;
mov ax, 2
mov (sp), ax
//if(a==2)
cmp ax, 2
bne _else
//int b;
push ax
//b=10;
mov ax, 10
mov (sp), ax
//printf ... questa risparmiamela :-)
jmp _end
/else
_else
//int b;
push ax
//b=5;
mov ax, 5
mov (sp), ax
//printf ... anche questa
_end
Codice: Seleziona tutto
//int a;
push ax
push ax
push ax
//a=2;
mov ax, 2
mov (sp-6), ax
//if(a==2)
cmp ax, 2
bne _else
//int b;
//b=10;
mov ax, 10
mov (sp-4), ax
//printf ...
jmp _end
/else
_else
//int b;
//b=5;
mov ax, 5
mov (sp-2), ax
//printf ...
_end
wally 67 (e sono tanti)
p.s.
pero' la prossima volta non farmi fare tutta questa fatica
Se io do una moneta a te e tu una a me abbiamo entrambi 1 moneta;
ma se io do una idea a te e tu una a me abbiamo entrambi 2 idee.
ma se io do una idea a te e tu una a me abbiamo entrambi 2 idee.
Re: Grafica C in linux
Quindi meglio programmare in assembler per avere il codice piu efficente possibile :P
-
wally67
- Scoppiettante Seguace

- Messaggi: 699
- Iscrizione: giovedì 1 marzo 2007, 15:31
- Distribuzione: xubuntu 20.04 LTS x86_64 (l'unica)
Re: Grafica C in linux
oh andrea, adesso bisogna fare attenzione alle virgole 
occorre chiarire il concetto di efficienza: per ridurre la dimensione del codice l' assembler e' l' ideale (in alcuni casi e' indispensabile, basta pensare che i context-switch vengono fatti solo in assembler). ma la struttura del programma, in termini di flessibilita', manutenzione, leggibilita' e anche portabilita' (soprattutto) e' decisamente meglio scriverla in un linguaggio ad alto livello (C, C++, Pascal, ... ma io preferisco C/C++ :P)
per il resto basta conoscere come vanno le cose. io la pensavo come simo fino a quando non ci ho sbattuto il naso. poi puo' anche essere che un altro compilatore si comporti in modo diverso. come la faccenda della dichiarazione variabili in C ad inizio corpo. a proposito. io il C lo ho studiato sul kerningam-ritchie ma questa storia della dichiarazione me la sono proprio persa. e' cosi' o manca sul serio?
wally 67 (e sono tanti)
occorre chiarire il concetto di efficienza: per ridurre la dimensione del codice l' assembler e' l' ideale (in alcuni casi e' indispensabile, basta pensare che i context-switch vengono fatti solo in assembler). ma la struttura del programma, in termini di flessibilita', manutenzione, leggibilita' e anche portabilita' (soprattutto) e' decisamente meglio scriverla in un linguaggio ad alto livello (C, C++, Pascal, ... ma io preferisco C/C++ :P)
per il resto basta conoscere come vanno le cose. io la pensavo come simo fino a quando non ci ho sbattuto il naso. poi puo' anche essere che un altro compilatore si comporti in modo diverso. come la faccenda della dichiarazione variabili in C ad inizio corpo. a proposito. io il C lo ho studiato sul kerningam-ritchie ma questa storia della dichiarazione me la sono proprio persa. e' cosi' o manca sul serio?
wally 67 (e sono tanti)
Se io do una moneta a te e tu una a me abbiamo entrambi 1 moneta;
ma se io do una idea a te e tu una a me abbiamo entrambi 2 idee.
ma se io do una idea a te e tu una a me abbiamo entrambi 2 idee.
Re: Grafica C in linux
comunque anche il gcc oppure g++ non te lo compilano se usi l'opzione -pedantic oppure -ansi oppure tutte e due assieme
lo standar c ufficiale sono le variabili al inizio e conviene sempre compilare un codice con -ansi se si vuole che funzioni su tutti i compilatori.
Mi sa pero che anche sul turbo c ce il modo di non farli segure lo standar bisognerà cambiare le opzioni di compilazione.
lo standar c ufficiale sono le variabili al inizio e conviene sempre compilare un codice con -ansi se si vuole che funzioni su tutti i compilatori.
Mi sa pero che anche sul turbo c ce il modo di non farli segure lo standar bisognerà cambiare le opzioni di compilazione.
Re: Grafica C in linux
Ma lo standard ansi dov'è che c'è scritto?
- simo_magic
- Rampante Reduce

- Messaggi: 9496
- Iscrizione: lunedì 18 dicembre 2006, 21:37
- Località: Piemonte
Re: Grafica C in linux
tu vuoi quindi leggere la specie di "regolamento di utilizzo" del c che fa parte degli standard ansi?Andrea88 ha scritto: Ma lo standard ansi dov'è che c'è scritto?
Re: Grafica C in linux
Si tutte le norme/regole ke permettono ad un programma di seguire lo standard ansi .. cmq ho già trovato 
- Guiodic
- Accecante Asceta

- Messaggi: 28474
- Iscrizione: martedì 24 aprile 2007, 15:28
- Località: Roma
- Contatti:
Re: Grafica C in linux
Io mi ricordo cosa disse il mio prof quando fece la prima lezione di C :
Ragazzi, avete imparato con fatica le regole del Pascal. Adesso prendete tutto ciò che sapete e dimenticatelo
Ragazzi, avete imparato con fatica le regole del Pascal. Adesso prendete tutto ciò che sapete e dimenticatelo
Chi c’è in linea
Visualizzano questa sezione: 0 utenti iscritti e 3 ospiti
