mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c
Titolo: Scusate, ma ne ho proprio bisogno ...

Ciao a tutti
Scusate la domanda poco 'corretta', ma ho veramente bisogno di un
decompilatore per C.
Ho un vecchio programma sviluppato con MSC 6.0 x DOS al quale devo fare
delle modifiche e il disco con i sorgenti non ne vuol sapere....
Se qualcuno di voi ha l'indirizzo di dove poter scaricare un decompilatore
per questa versione di C gli saro' eternamente grato ....
Grazie a tutti

Cos'č un decompilatore?
Marco Iannaccone

...


E se il file non è stato scritto originariamente in C e usa cose che il C
non prevede(tipo uso di modalità protetta e reale in diverse parti del
programma)?
--
Marco Iannaccone
ICQ: 18748121
IRC: Tolkien
e-mail: 
captai...@ussvoyager.com

file eseguibile
La trasformazione da sorgente ad eseguibile e' irreversibile.

I decompilatori sono "generici", non vanno abbinati al compilatore usato. E il
loro output non e' mai (o molto raramente) 'C' ma ASM per cui non aspettarti
certo di ritrovarti un bel sorgente 'C'!!!
Vai qua' e trovi quello che cerchi.
http://w3.to/protools
Gll


programma)?
Il problema e' a monte di tutto cio'.
La trasformazione da codice sorgente a codice macchina implica la
trasformazione di un'istruzione "macroscopica" in molte istruzioni
"microscopiche".
Si potrebbe vedere come una relazione uno a molti tra l'insieme delle
istruzioni simboliche ad alto livello e l'insieme delle istruzioni
macchina.
Non puo' esserci corrispondenza biunivoca, ne' il programma puo'
immaginare come ricostruire una funzione basandosi sulle sole
istruzioni in linguaggio macchina, anche perche' molto spesso il
codice macchina e' ottimizzato e si allontana parecchio da cio' che
sarebbe la pura traduzione in assembly del codice sorgente.

 file eseguibile
[...]
Dubito fortemente che si riesca ad ottenere il codice sorgente d un
eseguibile, al massimo ottieni un incomprensibile codice oggetto...
Ciao, Luca.
-- 
*******************************************************
       "Dio non e' morto.
        E' vivo e sta lavorando
        a un progetto
        meno ambizioso"
				    graffito anonimo
  Reply to 
bia...@maganet.net
*******************************************************

Marco Iannaccone
Dovrebbe essere un compilatore che funziona al contrario, da file binari  ai
file sorgenti.
Comunque avevo letto da qualche parte che non era possibile creare un
decompilatore.
Newsgroup: it.comp.lang.c
Titolo: Aiutooooooooooooo

Ho un grande problema devo fare qusto programma e nono so da che parte
iniziare:
Si scriva un programma nell'assembly del MIPS, operante sul simulatore SPIM
il quale, preso in input da console un intero N,stampi sulla console tutti i
numeri n1,...,n32 che differiscono da N per un singolo bit nella
rappresentazione binaria in complemento a due.
Per realizzare il programma si consiglia di scrivere una procedura per
modificare l'i-esimo bit (1 <= u <= 32) di una word, ed
una procedura che effettui un ciclo da 1 a 32 e richiami la procedura
precedente, stampandone sulla console il risultato.
Spero che qualcuno mi dia una mano perchè sono nella...... fino al collo ed
entro il 30 devo consegnarlo.grazie 1000 teo
-- 
Posted from 
relay4.inwind.it
 [212.141.53.75] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Tutor at D.S.I. University of Milan
V_/_ 'The future will not remember, the past doesn't forget.'
I'm Linux zion 2.4.0 #4 Thu Jan 11 15:33:34 CET 2001 i586
Newsgroup: it.comp.lang.c
Titolo: [semi-OT]Complessità asintotica del SelectionSort

Il problema riguarda lo studio della complessità asintotica del
SelectionSort così fatto:
void SelectionSort(int v[],int riemp)
{
       int i,j,posmin;
       for(i=0;i<riemp;i++){
           posmin=i;
             for(j=i+1;j<riemp;j++){
                 if(v[j]<v[posmin])
                 posmin=j;
            }
       if(posmin!=i)
         scambia(v[i],v[posmin]);
 }
Il mio docente ha detto,calcolando la complessità in modo molto
approssimativo,che la complessità asintotica è O(n^2).
Vi chiedo delucidazioni a riguardo ovvero,
perchè esce O(n^2)?
Ringrazio anticipatamente chi sarà disposto a perdere del tempo per
aiutarmi.

 approssimativo,che la complessità asintotica è O(n^2).
nel caso peggiore per fare la selezione di un elemento devi scorrere
tutta la lista ed è O(n).
Il tutto va fatto per n elementi e n*n dà O(n^2)

 perchč esce O(n^2)?
Molto "a panza": iteri su un array di N elementi (ciclo for esterno), e 
per ogni elemento fai da un minimo di 1 confronto a un massimo di N-1 
confronti (ciclo for interno).
Per cui la media di confronti che fai per ogni elemento e` (N-1+1)/2 = N/2.
Scarti il /2, che conta poco quando N cresce, moltiplichi per N elementi 
e salta fuori N*N, ovvero n^2.
Per una trattazione decisamente meno "a panza", vedi il Knuth (5.2.3).
-- 
   |   \    \  | ___|_  |_  | ianezz a casa sua... :-)
   |  _ \  | \ | _|    /   /  Visita il LinuxTrent a
  _|_/  _\_|  _|____|___|___| 
http://www.linuxtrent.it

 perchè esce O(n^2)?
beh, riemp in questo caso e' n.
il ciclo esterno cicla da 0 a n-1, quindi n volte (questo indice e' i).
il ciclo interno da i+1 a n-1.
se il ciclo interno fosse anche lui da 0 a n-1 allora sarebbe n, che fatto
eseguire il numero delle volte del ciclo esterno e' n*n.
immagina di avere:
for(a=0;a<4;++a){
    for(b=0;b<3;++b){
         printf("x");
    }
}
il ciclo interno viene ripetuto 3 volte, quello esterno 4, quindi la printf
viene chiamata 12 volte, se compili il programma vedrai 12 x.
La stessa cosa si applica al selection sort, solo che non e' n*n, ma qualche
cosa in meno (a naso meta', ma non e' cosi!), in quanto il ciclo interno va
da i+1 a n-1 (e non da 0).
Ad ogni modo n*n, se pur approssimativo sta quasi bene in quanto A GROSSE
LINEE questo e' il suo tempo. Ovviamente n*n = n^2.
Tommy

Newsgroup: it.comp.lang.c
Titolo: cam universal

Come si programmano ?
grazie

Come si programmano ?
Sorry ,sono nel NG sbagliato .

Newsgroup: it.comp.lang.c
Titolo: NOVITA' FAI SOLDI A PALATE

...
    ...... MA VI RENDETE CONTO? 23 MILIARDI DI LIRE..........

Vedi la risposta di LTI: io mi associo a lui :-)

Newsgroup: it.comp.lang.c
Titolo: Ragazzi aiutatemi

Salve a tutti, mi serve un vostro aiuto: vorrei che mi deste la definizione
ESATTA dei seguenti testi:
Cos'è una variabile?
Cos'è una funzione?
Cos'è una procedura?
Cos'è una matrice?
Cos'è un vettore?
Cos'è una struttura?
Cos'è una struttura di iterazione?
Cos'è una struttura di selezione?
GRAZIE

 ha scritto nel messaggio
news:a4Sa8.70795$3J1.2...@news2.tin.it...

In qualunque testo di programmazione in C puoi trovare le definizioni per le
suddette.
Newsgroup: it.comp.lang.c
Titolo: piccolo aiuto....

esercizio d'esame:
scrivere una funzione C di tipo void che, ricevendo in ingresso una stringa
di lunghezza non nota,restituisca,tramite passaggio di parametri, il
carettere in penultima posizione ed il numero di volte in cui il carattere
"c" precede il carattere "a".
Ad esempio se la stringa è "scaramantica" la funzione deve restituire "c" e
2.
Mi sapete far vedere come si fa?
grazie,sono alle prime armi!
--
www.sitissimo.3000.it

Mi sapete far vedere come si fa?
Dovresti sforzarti di farli da solo questi programmi, altrimenti
rimarrai sempre "alle prime armi" ;)


Web Site: 
http://asterix75.capri.it
Secret MS Windows code:
while (1) { if (num_process > 1) bluescreen(rand()); }

oppure cosi':
Ehm... bisogna intendersi su cosa si intende per "precede".
Se vuol dire che "c" deve occupare la posizione precedente a quella di
"a", allora va bene, ma se invece indica semplicemente il fatto che la
"c" viene incontrata prima di "a", allora il tuo codice non va bene,
cosi' come non va bene il mio nel primo caso.

 cosi' come non va bene il mio nel primo caso.
Credo si voglia intendere il primo caso... almeno la mia interpretazione e' 
questa.


infatti,cmq grazie a entrambi!
--
www.sitissimo.3000.it

Newsgroup: it.comp.lang.c
Titolo: fprintf e fscanf

Ciao a tutta la NG, qualcuno mi sa risolvere questo problemino:
non capisco perché compilando e eseguendo questo codice l output  č   34 0
quando dovrebbe essere  345554
#include<stdio.h>
main()
    {
    int c,a=34;
    double d,b=345554;
    FILE *stream;
    stream=fopen("e:\\prova.dat","w");
    fprintf(stream,"%d %.0f",a,b);
    fclose(stream);
    stream=fopen("e:\\prova.dat","r");
    fscanf(stream,"%d%f",&c,&d);
    fclose(stream);
    printf("%d %.0f",c,d);
    getchar();
    return 0;
    }

 quando dovrebbe essere  345554
la riga con lo fscanf deve essere:
fscanf(stream,"%d%lf",&c,&d);
stai leggendo un double (che occupa piu' spazio in memoria di un float)
quindi specificare il giusto tipo e' importante:
%f sta per float, %lf per double.
ciao.
g.


E ho dimenticato di aggiungere che sei stato probabilmente
tratto in inganno dalla asimmetria tra scan e print:
nella printf (o sprintf o fprintf..) il %f indica il double,
in quanto i "valori" float possono essere banalmente e trasparentemente
convertiti in double. Quindi puoi usare indifferentemente %f per
stampare double e float.
La scanf (o fscanf o sscanf..) usa gli indirizzi delle variabili
e quindi deve  distinguere tra float e double.
ciao,
g.

infatti è proprio quello che ho fatto, grazie mille
"Giovanni Resta" <g.r...@iit.cnr.it.nospam> ha scritto nel messaggio
news:3E9C19BF...@iit.cnr.it.nospam...

Newsgroup: it.comp.lang.c
Titolo: Microsoft C 8.0

Salve,
devo mantenere alcune applicazioni sviluppate in ambiente dos col linguaggio
indicato in oggetto.
Per intenderci, sono applicazioni che girano nei registratori di cassa.
Qualcuno di voi sà indicarmi un sito dove poter trovare informazioni su
questo linguaggio?
Ho effettuato una ricerca su google ma non sono riuscito a trovare delle
informazioni utili.
Inoltre avrei un ultimo quesito.
Esiste un compilatore apposito per questo linguaggio oppure vanno bene altri
compilatori come ad esempio il Borland C++ Compiler 5.5?
Ringrazio tutto il news per il prezioso aiuto.

Ringrazio tutto il news per il prezioso aiuto.
Dipende dai sorgenti che devi compilare.
Se i sorgenti sono ANSI C, allora qualcunque compilatore ANSI
compliant va bene, altrimenti dovrai rivedere i sorgenti, trovare
tutte le chiamate a librerie non standard, ma peculiari dell'ambiente
di sviluppi per la quale sono stati scritti, e riadattarle in maniera
da poter compilare usando un altro compilatore.

 da poter compilare usando un altro compilatore.
Spero che questo non sia un grosso problema...
Ti ringrazio davvero tanto!
Ciao

compilatori come ad esempio il Borland C++ Compiler 5.5?
Se nei sorgenti ci sono chiamate a funzioni peculiari del Microsoft
saranno necessari degli aggiustamenti, ad ogni modo il Borland e'
abbastanza indicato, dato che le funzioni di libreria sono simili tra
i due (anche se hanno nomi spesso diversi).
ciao, acc.   
a...@libero.it

 ciao, acc.   
a...@libero.it
Ciao e grazie ancora!

Newsgroup: it.comp.lang.c
Titolo: if(x==0)x=0;

Questa e' bella
 
ho scoperto che esiste un numero che e' "quasi" zero... 
se lo visualizzo con printf, ottengo "-0.0000"
 
se ci faccio l'arcotangente di 1/x ottengo -pigreco (proprio come se fosse un numero negativo...)
 
ma se ci faccio un test del tipo "x<0" ottengo falso, proprio come se fosse positivo
 
una incongruenza... a volte mi si comporta da negativo, e a volte da positivo
 
leggo volentieri commenti a riguardo... 
(specie per soluzioni migliori al dover scrivere ogni volta if(x==0)x=0; in tutte le funzioni...)
 
grazie in anticipo e ciao


https://it.wikipedia.org/wiki/IEEE_754
 

 Questa e' bella
 
Piu` che bella, e` roba risaputa :)
 
https://www.linkedin.com/pulse/why-isnt-11-22-33-andrea-laforgia
Newsgroup: it.comp.lang.c
Titolo: TSR per tastiera

Ciao a tutti! Vorrei realizzare un programma TSR che mi permetta di
comunicare ad un programma in esecuzione l'avvenuta pressione di un certo
tasto della tastiera SENZA chiamare in causa il sistema operativo
(utilizzando cioé solo il controller della tastiera).

 wrote in message
8cqhmh$4v4$1...@lacerta.tiscalinet.it...

Se parliamo di Delphi (quindi Win/NT) non e' assolutamente possibile, non
esiste proprio il concetto di TSR.
Qualsiasi cosa tu faccia DEVE passare dal S.O.
Per risolvere il tuo problema devi creare un Hook, qualcosa vagamente simile
al buon GetIntVec e SetIntVec che usavamo sotto DOS, ma che agisce al
livello di S.O. e non di interrupt.
Se vuoi maggiori informazioni scrivi.
Ciao
Davide
davide....@iol.it
soft...@masmec.com
Newsgroup: it.comp.lang.c
Titolo: qualcuno di voi usa il libro C seconda edizione?

Ciao
scusatemi ma avrei bisogno di qualche delucidazione, data la mia scarsa
conoscenza del linguaggio c.
Ho acquistato il libro C seconda edizione e a pag 23 parla dei Vettori, con
un esempio di programma che conta spaz, cifre e altri caratteri.
perche' ad esempio una volta creato l'array
            int ndigit[10];
scrive:  for(i = 0; i < 10; i++)
            ndigit[i] = 0;
inoltre non mi e' chiaro questo passaggio:
if(c> = '0' && c<= '9')
   ++ndigit[c - '0'];
grazie!

   ++ndigit[c - '0'];
Ok,  l'if  mi sembra  banale:  controlla  se  il  carattere /c/  e`  una
cifra.  Nota che  lo standard richiede che i  caratteri numerici abbiano
una codifica continua e crescente da  '0' a '9'. Con la tabella ASCII la
codifica e` questa:
'0' -> 48
'1' -> 49
....
'9' -> 57
L'array  contiene  dieci  elementi,  uno per  ogni  cifra. Non  possiamo
indicizzarlo in  maniera diretta utilizzando  c perche` avremmo (es  c =
'1'):
++ndigit[c] -> ++ndigit[49]
e  come   vedi  siamo  ampiamente  fuori   dall'area  allocata. Potremmo
risolvere con una serie di if o con uno switch:
case (c) {
        case '0':
                ++ndigit[0];
                break;
        [.....]
        case '9':
                ++ndigit[9];
                break;
}
ma come vedi la  cosa e` piuttosto lunga. Ci viene in  aiuto il fatto la
che  la codifica  e`  continua a  crescente. Infatti,  se sottraiamo  al
carattere  il  valore  numerico  di  '0'  otteniamo  proprio  il  numero
rappresentato dal carattere:
'0' - '0' = 48 - 48 = 0
'6' - '0' = 54 - 48 = 6
e  cosi` via. Possiamo  quindi utilizzare  l'espressione (c  - '0')  per
indicizzare direttamente l'array.
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
The trouble with computers is that they do what you tell them, 
not what you want.
D. Cohen

"Kronos"
largo al salvatore di noi niubbini!
giuro che il mio primo programma serio lo dedico a te!

Newsgroup: it.comp.lang.c
Titolo: Winlogon

Salve a tutti,
sono uno sviluppatore con il CVI National Instruments, mi capitato che 
alcuni programmi che sviluppo su alcuni calcolatori saturino (100% CPU) il 
programma winlogon. Non entro del merito del codice, poichè cercando in rete 
ho scoperto che winlogon satura in una miriade di occasioni, ma non ho 
trovato la soluzione.
E' capitato anche a qualcuno di voi?
Riccardo 

"Inondagrigio!" <zoo...@NOSPAMhotmail.com> wrote 

hai scritto sul NG sbagliato. ti consiglio di scrivere su di un NG di
programmazione per win32.
Tommaso
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG
Newsgroup: it.comp.lang.c
Titolo: inviare lo stdout da exec verso un socket

Salve,
sto scrivendo un server TCP, su Linux, che si comporta un po' come
rexec: riceve un comando e lo esegue. In particolare, la funzione che
esegue il commando fa una fork e, nel processo figlio, una execle (uso
questa versione della exec perché ho bisogno di fissare alcune
variabile ambientali).
Avrei bisogno di leggere l'uscita standard dell'applicazione lanciata
da execle (per esempio "ls") e scriverla direttamente sul socket su cui
dialogo con il cliente (non ho voglia di passare attraverso un file
intermedio).
Prima di cercare su google (inizio subito), ho pensato di chiedere al
ng.
Grazie in anticipo a chi risponderà,
J.

 Prima di cercare su google (inizio subito), ho pensato di chiedere al ng.
Tecnica sbagliata: prima si cerca poi si chiede.
Ciao
-- 
Cybertoldo
Per rispondermi via email, sostituisci moc.liamg con 
gmail.com

 Tecnica sbagliata: prima si cerca poi si chiede.
Volevo testare se avrei trovato prima la risposta da solo o se tramite
il ng. Per la cronaca, l'ho trovata prima da solo.
J.

 il ng. Per la cronaca, l'ho trovata prima da solo.
sei un grande! :-)


 J.
Per chi fosse interessato:
http://www.developerweb.net/forum/archive/index.php/t-3026.html
J.

 
http://www.news.nic.it/manif/it.comp.lang.c.html
Leggo che il manifesto parla di portabilità... fai un po' tu :-)
J.

 intermedio).
Usando la dup() ma devi avere le librerie per il supporto POSIX.
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   Registered Linux user #337974  < 
http://giovanni.homelinux.net/
 >

 Usando la dup() ma devi avere le librerie per il supporto POSIX.
In effetti ho aggiunto dup2(connfd, STDOUT_FILENO); prima della exec,
dove connfd è il fd corrispondente al socket.
Graizie,
J.

 Leggo che il manifesto parla di portabilitą
...e che tu non sai cos'e'. Ma non e' un delitto: puoi chiederlo qui.
PS: *personalmente* (nb: personalmente) non mi frega molto dell'OT. Ti 
ho ripreso per il fatto che hai chiesto senza prima documentarti o 
cercare. L'altro appunto (il chiedere ad altro ng) era solo un consiglio.

Newsgroup: it.comp.lang.c
Titolo: EOF

#include <stdio.h>
int c;
main()
{
	printf("EOF = %d\n",EOF);
	while (c = (getchar() != EOF))
	{
		printf("%d\n",c);
		getchar();
	}
	printf("%d\n",c);
}
all'uscita del while il printf m dovrebbe stampare 0 (perchč la
condizione salvata in c č falsa),mentr invece non mi stampa nulla
semplicemente mi ignora il printf... 
perchč?
grazie
		gabo
p.s. č l'esercizio 1-6 del K&R

	while (c = (getchar() != EOF))
Attento: qui dev'essere:
while ((c = getchar()) != EOF)
Il principio e' che prima assegni il carattere in input a c
e solo dopo verifichi che sia diverso da EOF.
-- 
The Follet

On Fri, 12 Oct 2001 17:09:24 GMT, thef...@thefollet.bye (The Follet)
wrote:

ti ringrazio, ho corretto gli errori, ma quando run time passo CTRL+Z
(lavoro con win98) a getchar, mi termina l'esecuzione, senza stampare
a video il contenuto di printf, che č fuori dal while... perchč?
rigarazie
		gabo

a video il contenuto di printf, che č fuori dal while... perchč?
Togli il getchar() all'interno del ciclo.
-- 
The Follet

On Fri, 12 Oct 2001 17:44:30 GMT, 
g.br...@tiscalinet.it

grazie, ora funziona
Newsgroup: it.comp.lang.c
Titolo: stringa e file

Seconda parte del mio problema (che Massimiliano Alberti mi ha aiutato
a risolvere): tramite riga di comando faccio
mioprog -f nomefile.abc
devo fare in modo di prendere il file nomefile senza estensione e
creare una stringa char stringa[] del tipo miofile/miofile.abc
qualcuno ha qualche idea?

 qualcuno ha qualche idea?
Adesso mi dirai che sono puntiglioso... Ma il problema č in parte
malposto...
miofile.abc.def come ci comportiamo? Di solito si considera estensione solo
quella dopo l'ultimo punto...
In questo caso (in pseudocodice)
calcolo iLen = strlen(stringabase)
int i;
for (i = iLen - 1; i >= 0; i--) {
if (stringabase[i] == '.') {
  break;
}
}
se i = 0, allora metti i = iLen
se no non fare nulla
(in ogni caso passa avanti)
ora mallochiamo (i - 1) + 1 + iLen + 1 caratteri, ci copiamo i - 1 caratteri
di stringabase e poi una '/' e poi tutto stringabase (e ricordati di
metterci lo 0 finale)
dovrebbe essere:
memcpy(stringa2, stringabase, i - 1);
stringa2[i] = '\';
memcpy(stringa2 + i + 1, stringabase, iLen);
stringa2[(i - 1) + 1 + iLen] = 0;
prova a fare una printf per vedere che porcheria ti esce :-)
(ok... Mezzo programma č gią fatto :-) )

Dimenticavo, quello che ho fatto è un esempio di cose brutte che si possono
fare con le stringhe in C. I bravi bambini non le fanno (invece di usare
strcpy e strcat ho usato delle memcpy) :-)
Ricordati di fare free della stringa allocata :-)
--- bye



una volta ottenuta una stringa abbastanza grande che contiene gią
"miofile.abc" al suo interno, puoi usare questa pezzo di codice molto
ristretto (ok,ok.. troppo ristretto :P) per ottenere quello che vuoi:
sprintf( strrchr( miaStringa, '.' ), "/%s", nomeFile );
ricordati che $miaStringa deve poter contenere circa almeno 2 volte la
lunghezza di $nomeFile, e che se miaStringa non ha punti al suo interno,
quel pezzo fa crashare il programma :PPP. Uff lo dicevo io che era troppo
ristretto, vediamo di migliorarlo:
  const char * nome = "nomefile.abc";
  char * n, * p;
 
  n = malloc( strlen(nome)*2 );
  strcpy(n,nome);
 
  p = strrchr( n, '.' );
  if( p )
    sprintf( p, "/%s", nome );
 
  /* QUI UTILIZZA 'n' COME VUOI */
  free(n);
Ok.. spero di non aver scritto stupidaggini.. rispondere alle 3.20 non mai
una buona idea (e allora perché lo faccio ? ;P)
BuonaNotte

Ho sbagliato tutto... Me ne sono accorto non appena sono andato a dormire...
Ma avevo già spento il computer... Riproviamo:
In questo caso (in pseudocodice)
calcolo iLen = strlen(stringabase)
int i;
for (i = iLen - 1; i >= 0; i--) {
if (stringabase[i] == '.') {
  break;
}
}
se i < 0, allora metti i = iLen
se no non fare nulla
(in ogni caso passa avanti)
ora mallochiamo i + 1 + iLen + 1 caratteri, ci copiamo i caratteri
di stringabase e poi una '/' e poi tutto stringabase (e ricordati di
metterci lo 0 finale)
dovrebbe essere:
memcpy(stringa2, stringabase, i);
stringa2[i] = '/';
memcpy(stringa2 + i + 1, stringabase, iLen + 1);
prova a fare una printf per vedere che porcheria ti esce :-)
(ok... Mezzo programma è già fatto :-) )
--- bye
Newsgroup: it.comp.lang.c
Titolo: [OT]Compilatore Gcc3.3

Salve a tutti, ho acquistato la rivista
Ioprogrammo di Luglio , uno dei 2 cdrom
contiene il compilatore Gcc3.3 della GNU.
non ho capito come fare a installare 
il gcc per Windows ,sapete darmi info?, 
qualcuno l'ha installato?
Grazie a tutti ciao

 ha scritto nel messaggio
news:xgfRa.180249$Ny5.5...@twister2.libero.it...

e' ot ... cmq su io programma c'e' la versione linux o quella windows ???
cmq fai prima ad andare ad installarti tutto il pacchetto mingw
www.mingw.org
 che almeno oltre al compilatore ti da gia' librerie e header
piu' altre utilita'
l'unico ide per il gcc sotto windows e' il dev-c++
www.bloodshed.net/devcpp.html
per il resto qua come ha gia' detto tut sei ot ...
ciao

Newsgroup: it.comp.lang.c
Titolo: Mandare in rete i propri programmi

Ciao a tutti,
sono un giovane programmatore.
Sarei interessato alla possibilità di inviare su dei server ftp (come per
esempio VOLFTP) i miei programmi, in modo da farli conoscere agli utenti di
Internet e avere dei pareri.
Per ora ho provato solo su VOLFTP, ma mi da un errore (non mi da il premesso
di scrittura sui loro server). Qualcuno conosce altri server, magari anche
più noti?
Fabio Carosio [aka King Richard]
e-mail
 
ort...@iol.it
   (my brother's and mine)
 
sigfrid...@iol.it
 (my own mailbox)
ICQ# 38797783
home 
http://persone.digiland.it/1125

prova 
www.xoom.it

Newsgroup: it.comp.lang.c
Titolo: funz relative a data e ora (ved K.R.)

c'è scritto clock_t clock(void)
    clock restituisce il tempo di cpu usato dal programma dall'inizio
dell'esecuzione, e -1 se tale info non è disponibile .
alua posso fare es:
int c;
...........
c=clock();
printf("%d",c);

 ha aggiuge nel nuovo
messaggio :Sono come san Tommaso la teta(n같) la  voglio toccare con mano!!!
#include <stdio.h>
#include <time.h>
#define Max 100
#define EOS '\0'
void selsort (int a[]);
int a[Max];
clock_t j;
main()
{
 FILE *f;
 int i;
 char s[10];
 printf("\n nome file (max 10 char):");
    scanf("%s",s);
     f=fopen(s,"r");
  if (f==NULL)                          //cond di errore
 {
  printf("il file %s non esiste",s);
  return 0;
 }
 for (i=0;i<Max;i++)
  fscanf(f,"%d",&a[i]);
fclose(f);
selsort(a);
 f=fopen(s,"w");
 for (i=0;i<Max;i++)
       fprintf(f,"%7d",a[i]);
fclose(f);
}
void selsort (int a[])
{
 int i,k,imin,aux;
 for (k = 0;k < Max-1;k++)
    {imin = k;
      for (i = k+1;i < Max;i++)
 if (a[i] < a[imin]) imin = i;
      /* scambio a[k] con a[imin] */
      aux = a[k];
      a[k] = a[imin];
      a[imin] = aux;
     }  j=clock(); printf("%d",j);          /* nodo chiave del problema ( io
voglio il tempo che impiega la selsort non il tempo di esec di tutto il
progr. )*/
}

buttana di clock()
e vaff al server che abbiamo a scuola che per darci netscape ci mette
3 minuti 22sec contati , e vaff anche al compilatore per il  c e alla mia
inioranza in
italiano matematica e inglese.
e vaff a quei testoni che ci mettono le fibre ottiche
e non mettono a posto il nostro server marcio p$%& $Ło.
stesera sono mooolto arrabbiatto
mi sa che non dormirň neanche 5 sec.(tanto per stare in tema di time e
company)
Newsgroup: it.comp.lang.c
Titolo: OT: connessione da Linux aiuto

Ringrazio subito chi vorrà rispondermi:
il mio problema è che dopo aver configurato lo script 
e le opzioni per pppd e lancio lo script il modem chiama
ma il server non risponde. Sento il modem che 'squilla' ma non c'è 
risposta. Un'altro problema: su /ect/resolv.conf c'è una
riga che dice:
search localdomain
nameserver ###.###.###.###
ecc.
al posto di localdomain ci dovrei mettere il nome del server ma non lo
conosco. Come faccio a saperlo se non mi posso collegare?
Ed è per questo che non mi risponde il server?

 Ringrazio subito chi vorrà rispondermi:
1) segnalazione ad abuse
2) fw su it.fan.culo
-- 
Non c'è più forza nella normalità, c'è solo monotonia.
-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com
 - The #1 Newsgroup Service in the World!
-----==  Over 90,000 Newsgroups - 16 Different Servers! =-----

Newsgroup: it.comp.lang.c
Titolo: menu selezionato con i tasti

Ciao, volevo sapere se qualcuno di voi ha gia fatto un programmino menu;
selezionando i tasti per esempio (a) e (z) viene evidenziato una categoria
del menu, poi premendo
uno dei tasti prescelti si evidenzia la categoria giusta.
Ad esempio premendo il tasto z si scorre verso il basso il menu evidenziando
la categoria.
La pressione dei tasti l'ho gia risolta senza problemi, mi sono creato un
header apposta.
E' il menu che mi interessava, se qualcuno di voi l'ha gia realizzato ;)
faccio meno fatica io ;);)

 ha scritto nel messaggio
news:8t9poe$imm$1...@pluto.sm.dsi.unimi.it...


Newsgroup: it.comp.lang.c
Titolo: HELP: dll --> C o C++

Ciao,
e' possibile risalire al sorgente C o C++
partendo dal un .dll ???
mille grazie
_____________________________________________________________________________________
Get more from the Web.  FREE MSN Explorer download : 
http://explorer.msn.com
-- 
Posted from [62.98.33.203] by way of 
f311.law10.hotmail.com
 [64.4.14.186] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Ciao,
e' possibile risalire al sorgente C o C++
partendo dal un .dll ???
mille grazie
_____________________________________________________________________________________
Get more from the Web.  FREE MSN Explorer download : 
http://explorer.msn.com
-- 
Posted from [62.98.33.203] by way of 
f46.law10.hotmail.com
 [64.4.15.46] 


 wrote in message
F462hSsKAfHci...@hotmail.com...

Newsgroup: it.comp.lang.c
Titolo: Dove sbaglio?

Sto tentando di imparare il c, ma non vengo fuori da questo problema, il
codice che segue va in segfault, qualcuno sa aiutarmi?
Grazie in anticipo.
#include<stdio.h>
#include<string.h>
char consonants[23] = "bcdfghjklmnpqrstvwxyz";
char char_is_member (char a_char, char a_char_set[]);
void get_consonants (char a_char_vector[]);
char char_is_member (char character, char vector[])
	{
	int i;
	while (vector[i] != '\n')
		{
		if (character == vector[i])
			return character;		
		i++;
		}
	return '\0';
	}
void get_consonants (char vector[])
   {
	extern char consonants[];
   int step = 0;
	char my_char;
	while ((my_char = vector[step]) != '\0')
		{
		if ((char_is_member (my_char, consonants)) != '\0')
			printf ("char is vowel: %c\n", my_char);
		else
			printf ("char isn't a vowel: %c\n", my_char);
		step++;
		}
	return;
	}
int main()
{
	char my_set[7] = "aeiou";
	char my_name[100] = "dario";
	get_consonants (my_name);
	return 0;
}

 while (vector[i] != '\n')
  while ( vector[i] != '\0')
MM

 		if (character == vector[i])
vector[i] ogni volta che viene chiamata la funzione usa una variabile 
non inizializzata quindi e` probabile che generi segfault.
Prova a dichiarare  -->  int i = 0;
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   Registered Linux user #337974  < 
http://giovanni.homelinux.net/
 >

Newsgroup: it.comp.lang.c
Titolo: Power Builder è un compilatore c ????????????

Vorrei sapere se qualcuno conosce questo tool e se può indicarmi le
principali caratteristiche. Se poi non è chiedere troppo vorrei sapere se
conoscete qualche buon manuale .
Grazie per la pazienza.
Roberto Maggini

No.
Ha un suo linguaggio object oriented ed un suo ambiente di sviluppo.
Compila.
E' molto potente e mi sembra che sia abbastanza usato all'estero.
--
Antonio Donatiello

...


Non ho altre informazioni, perche' io non lo uso. Qualche tempo fa lo
provammo in azienda insieme ad altri strumenti di sviluppo.
Ciao.
--
Antonio Donatiello
Newsgroup: it.comp.lang.c
Titolo: Files strutturati...

Io vengo da una programmazione didattica basata sull'utilizzo di "Borland
Pascal"...
In tale linguaggio sono presenti i file di TESTO e i file TIPIZZATI (files
of
record)...
Come faccio in C a creare files strutturati? E' possibile?
Oppure come faccio a leggere file di TESTO riga per riga come si faceva col
vecchio pascal? (esiste una funzione oppure devo implementarmela io)?

vecchio pascal? (esiste una funzione oppure devo implementarmela io)?
#include <stdio.h>
int main()
{
   FILE *stream;
   char s[100];
   if ((stream = fopen("TEST.TXT", "rt")) == NULL) 
   {
      fprintf(stderr, "Cannot open input file.\n");
      return 1;
   }
   while (fgets(s, sizeof s, stream)) 
         printf("%s", s);
   fclose(stream);
   return 0;
}
-- 
Andrea Laforgia
#exclude <windows.h>

 In C non esiste il corrispondente Pascal "file of T", dove T è il tuo


legge 100 caratteri ogni riga, o no ?!?!
fgets assicura che in s non finiscano mai più informazioni di quante
essa ne possa contenere, questo significa che se hai, supponiamo:
char s[5];
|input (seguito da invio) | memorizzato da fgets  |
|-------------------------|-----------------------|
| a                       | [ a][\n][\0][  ][  ]  |
| an                      | [ a][ n][\n][\0][  ]  |
| and                     | [ a][ n][ d][\n][\0]  |
| andr                    | [ a][ n][ d][ r][\0]  |
| andre                   | [ a][ n][ d][ r][\0]  |
| andrea                  | [ a][ n][ d][ r][\0]  |
In s vengono sempre memorizzati massimo 5 caratteri.


Newsgroup: it.comp.lang.c
Titolo: Bus error? Ma che cavolo succede?

Ciao a tutti, da molto scarso in C non capisco che succede qui:
siamo nella main, vi risparmio il resto delle variabili:
        typedef struct {
                float mz;
                int charge;
                int *byteSpectrum;
        } spectrum;
//      spectrum *msmSpec;
 
        command = strcat(strcat(strcpy(command, grepString), argv[1]),
wcString);
        msmFile = popen(command, "r");
        fscanf(msmFile, "%d", &t);
        pclose(msmFile);
        printf("Number of spectra %d \n", t);
[..]
        return 0
se compilo in questo modo funziona tutto. Se tolgo il commento alla
dichiarazione di "msmSpec"  compilo e all'esecuzione ottengo un Bus
Error. Se a questo punto commento la parte che apre il pipe (con un
grep) tutto ritorna a funzionare. Come mai la dichiarazione di msmSpec
e' *incompatibile* con quello che viene dopo? Che succede?
Grazie
d
-- 
Davide Cittaro
Drop WINDOWS if you want to reply


Cosa e` t?
Cosa e` wcString?
Nel codice che hai postato mancano dei pezzi.
Potrebbe essere che il tuo codice e` bacato di un qualche sporcamento in 
memoria, qualdo commenti/decommenti sposti il *text* compilato del tuo 
codice. In certi casi lo sporcamento non fa danni in altri si a seconda 
di cosa compili.
Potrebbe anche essere una idea leggere la documentazione delle funzioni 
che chiami, magari li e' descritto cos'e' "bus error", probabilmente e' 
un errore stampato dalle funzioni che chiami prima che il programma vada 
in crash.
Ciao,
Cesare
Newsgroup: it.comp.lang.c
Titolo: funzione ODD

Mi trovo davanti una definizione di funzione di questo genere:
#define ODD(x)  ((x) & 0x01)
dal nome mi verrebbe da dire che restituisce 1 se x è dispari e 0 se è pari,
ma come funziona? Cos'è quel 0x01?
grazie
michele



quella macro fa un AND (&) bit a bit con 0000 0001 

Quindi alla fine fa quello che avevo supposto?
Comunque non ho molto capito, cosa diventa 0x01 se x=40?
grazie ancora
michele


 Comunque non ho molto capito, cosa diventa 0x01 se x=40?
0x01 non diventa niente!
L'espressione fa un and bit a bit. L'unico bit vero in 0x01 è il bit che
vale 1 (2^0), in 40 il bit che vale 1 (2^0) è a 0. In 41 invece è a 1.
Quindi il risultato dell'espressione odd(40) = 0.
--- bye

 Comunque non ho molto capito, cosa diventa 0x01 se x=40?
0010 1000 & 0000 0001 = 0000 0000
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 michele
 x=40 in binario diventa x=0010 1000 
e 0010 1000 & 0000 0001 = 0000 0000 ovvero 0
con x=41 avrei x=0010 1001 
e 0010 1001 & 0000 0001 = 0000 0001 ovvero 1
ciao 
Fabio

 Comunque non ho molto capito, cosa diventa 0x01 se x=40?
No no acqua acqua !
per poter scrivere un numero in esadecimale in un programma
e farlo capire al compilatore bisogna premettere al numero
stesso 0x (zero ics).
quindi, ad esempio,   0xFF e' il numero 255 oppure 0x101 e'
il numero 257 e 0xA e' il numero 10.
Poi in particolare 0x01 e' banalmente il numero 1.
Quindi e' come se avesse scritto
#define ODD(x)  ((x) & 1)
che fa l'AND binario tra x e 1.
questa operazione (bisogna che tu conosca la rappresentazione
in base due, altrimenti stiamo parlando inutilmente)
restituisce ovviamente 1 se l'ultimo bit di x
e' uguale a 1 (cioe' se x e' dispari) e restituisce
0 se l'ultimo bit di x e' 0, ovvero se x e' pari.
ciao,
g.

Newsgroup: it.comp.lang.c
Titolo: [?]Come faccio a verificare...

Salve a tutti , uso Djgpp+WinME , volevo sapere come posso fare a verficare
se
un numero int long può avere il segno oppure no .
Che sò , il risultato di una operazione :
int long z1;
z1=sqr(13)*256+25/3,14-63,45/cos(-34,68743)+ sin(-23,864855);
Come posso fare ?
Grazie a tutti
Ciao   Roberto

Che sņ , il risultato di una operazione :

Newsgroup: it.comp.lang.c
Titolo: Integer, e bit...

 'The Krazy One'   ::--------
->  "To reign is worth ambition, though in hell."   |  UIN: 21267457  <-
-<  "Better to Reign in Hell Than Serve in Heaven"  | ircnet: krazy98 >-
---** If voting changed anything, they'd make it illegal. **---

 wrote:
[ snip ]
Nota: non e' cosi' ovvio che un integer contenga 16 bit ;)
PF>come faccio a fare qualcosa del genere
PF>printf("%d",intero&bit4); 
PF>ove intero&bit4 dovrebbe essere "il quarto bit della variabile int
PF>intero"?
Io userei qualcosa del tipo
	printf("%c", (intero & (1 << 3)) ? '1' : '0');
Esemplificando:
---------------------------------------------------------
#include <stdio.h>
int main()
{
        int i; 
	unsigned int intero = 0x666;
        for (i = 15; i; i--)
                putchar((intero & (1 << i)) ? '1' : '0');
        puts((intero & 1) ? "1" : "0");
        return 0;
}
---------------------------------------------------------
Ciao ciao,
Andrea
-- 
"...Unix, MS-DOS, and Windows NT (also known as the Good, the Bad, and 
 the Ugly)."
(by Matt Welsh)

 intero"?
Potresti utilizzare gli operatori di shift opportunamente mascherati con
delle macro oppure i bit fields.
EMG

printf("%d",intero&bit4); 
printf ( "%d", ( intero >> (n-1) ) & 1 ) ;
in cui "n" indica il numero del bit voluto (1..16 (o piu') da destra a
sinistra).

Newsgroup: it.comp.lang.c
Titolo: Linux e il C - domanda di un idiota

Salve a tutti, sono quasi sicuro di andare fuori tema, ma.. spero non vi
arrabbierete!
Mi sono da poco affacciato a Linux e vorrei anche compilarci qualcosa ma
come?
Io ho provato con :
gcc hello.c     (il classico hello World)
ma mi sputa fuori un file a.out che nel manuale si dice essere
l'eseguibile... ma a me dice bash: command not found! (come faccio ad
eseguire il file compilato? non basta scriverci il nome nella shell?)
Mi scuso in anticipo se è più una domanda sui compilatori ma.. cosa ci
faccio con il mio "c knowledge" se poi non riesco ad eseguire nessun
programma?
Grazie ancora
Marco

 eseguire il file compilato? non basta scriverci il nome nella shell?)
Vuol dire che la dir dove si trova l'eseguibile non e` nel PATH.
Per eseguire il programma devi scrivere ./a.out
-- 
gi@der         [< was it a cat I saw >]      (L. Carroll)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
E-mail:    giader(at)
linuxfan.com
         {Giacomo Delre}
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Marco
Prego
Marco
-- 
............................................
 
m.at...@flashnet.it
La prima delle Frequently Asked Question: 
dove sono le FAQ ?      it.faq

 l'eseguibile... ma a me dice bash: command not found! (come faccio ad
Devi dargli l'attributo da eseguibile.
Non usando unix da tempo, non ricordo il comando, prova:
chmod +x pippo.out
o qualcosa del genere. MAN dovrebbe aiutarti.
--
Alessandro Monti

 wrote in message
4J_%3.2601$Wa.1...@typhoon.libero.it...


 wrote in message
slrn83vvro...@fortezza.paranor.sh...

Newsgroup: it.comp.lang.c
Titolo: Algoritmi in C

Avrei intenzione di incrementare la mia conoscenza
del C e sarei intenzionato ad acquistare il libro del Subject di
Robert Sedgewick. Ho visto la recensione di Cuni su 
programmazione.it
ma volevo sapere se la versione originale in lingua inglese
conviene...sai nn mi fido molto delle traduzioni..
-- 
Lawrence "Rhymes" Oluyede (
rhy...@myself.com
)
"Per cambiare, per diventare un'altra
cosa dobbiamo prima sapere cosa siamo"
(Bruce Lee)

 conviene...sai nn mi fido molto delle traduzioni..
   La versione in italiano in mio possesso non ha nessuna pecca in grado 
di inficiare il valore complessivo del libro.
-- 
Veri pirati noi siamo       Ma cosa c'e` di male?
Contro il sistema lottiamo  Ma cosa c'e` di strano?
Ci esercitiamo a scuola     Facciamo un gran casino
A far la faccia dura        Ma in fondo lavoriamo
Per fare piu` paura         Per capitan Uncino

 Robert Sedgewick.
Io avevo  intenzione di  prendere l'edizione inglese,  visto che  con le
traduzioni  ho avuto  alcune brutte  esperienze. Cmq, l'ultima  edizione
inglese contiene  anche la quinta  parte e non  mi risulta che  sia gia`
stata tradotta.
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
ATTENZIONE: il mio indirizzo email e` cambiato, quello vecchio verra` 
disabilitato a breve.
Il coraggio non mi manca.
E` la paura che mi frega...

stata tradotta.
quinta parte? che è?


Guarda su 
http://www.cs.princeton.edu/~rs/
 :)
Pero' guardando solo la presentazione del libro mi pare che siano gia'
incluse nella versione italiana che ho io.
Mox :)



Ottimo corro ad acquistare la versione in italiano

Newsgroup: it.comp.lang.c
Titolo: help me!

Ho un probleema durante la compilazione.
Premettendo che il campo sul quale mi da' errore
e' numerico e la riga di comando e questa:
printf("n pag\n");gets(info.pagina);(info.pagina e' una variabile)
il messaggio d'errore e':
type mismatch in parameter '__s' call to 'gets'
Ed ifine ho dichiarato long il numero totale di record
nel seguente modo:
long tot_rec;
e mi da' un errore sintattico.
Molto probabiltente non so usare il comando long me lo spiegate?
				Ciao e Grazie.
--
Automatic posted from 
agora.stm.it
 [195.62.32.1]
via Mailgate Server - 
http://www.mailgate.org

Molto probabiltente non so usare il comando long me lo spiegate?
mi sembra corretto, forse l'errore riguarda la linea precedente, e il
compilatore ti da la linea sbagliata. a volte succede quando
dimentichi il punto-e-virgola finale.
--
[ranger, email: 
ran...@queen.it
]
ICQ# 6585343

Molto probabiltente non so usare il comando long me lo spiegate?
long e' un tipo di dato, non un comando, dove l'hai dichiarato ?
I dati vanno dichiarati prima di scrivere il codice.
Andrea
------------------------------------------------
combatti anche tu il "nano scemo" :
http://www.geocities.com/Hollywood/Studio/6989
------------------------------------------------

Newsgroup: it.comp.lang.c
Titolo: Codice incomprensibile

Ciao a tutti,
volevo chiedere a voi la spiegazione di 3 righe di codice C che non
riesco a capire:
"typedef UINT32 offs_t;" //e fin qui ok
"typedef data_t (*mem_read_handler)(offs_t offset, data_t data); //e fin
qui ancora ok
Dunque per il momento io ho dichiarato la mia variabile offs_t come di
tipo UINT32 ed ho poi definito un puntatore a funzione che prende due
argomenti di un certo tipo e restituisce un valore di tipo data_t. E fin
qui ok...
Poi segue però questa istruzione che non riesco a capire:
"#define MRA_RAM ((mem_read_handler) -1) /* plain ROM location (return
its contents)"
Io mi chiedo: MRA_RAM è quindi una macro il cui valore è il risultato
della funzione mem_read_handelr -1? E perchè togliere proprio -1 e non
un altro valore?
Potrebbe anche darsi che l'autore stia utilizzando il C a basso livello
per sfruttare in qualche modo particolare la memoria, o no?
Grazie, Paolo
--
Posted from root@[212.69.128.10] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 E perchè togliere proprio -1 e non un altro valore?
Non ne ho idea. Dipende dalla problematica specifica.
EMG

EMG


No, non il risultato (non ci sono le parentesi) ma il suo indirizzo.
mem_read_handler non e' una variabile, ma un tipo. Quindi l'espressione mi
sembra un cast.
Saluti,
    Mardy

 sembra un cast.
Giustissimo.
EMG
Newsgroup: it.comp.lang.c
Titolo: Cerco info onLine su Standard c e C++.

Qualcuno sa indicarmi dei link ?
Grazie. by Lucio

 Grazie. by Lucio
All'indirizzo 
www.bruceeckel.com
 trovi il libro "thinking in c++" che
puoi scaricare gratuitamente.
Ciao
  Roberto.
P.S.: se riesci a trovare qualcosa di piu` basilare fammi sapere.
-- 
-------------------------------------------------------------------
 Vabbe`  ma  mica posso fare tutto io! Te lo sai a che ora mi sono
 alzato  questa  mattina? Alle sette meno un quarto! La bambina mi
 ha vomitato tutta  l'anguria  nelle scarpe!  Stamattina e` venuto
 l'idraulico e sai  quanto mi ha chiesto? Centocinquantamila lire!
 E dopo mezz'ora  il  rubinetto ha ricominciato a buttare l'acqua!
 Quela poi e` andata al corso di chitarra alle tre del pomeriggio,
 lo sai a che ora e` tornata? alle  quattro del mattino! Con tutto
 il rossetto  spostato  sulla  faccia. Ma che la chitarra la suoni
 con la bocca? Hai capito?
-------------------------------------------------------------------
 Attenzione:  i  dati  nell'header  sono modificati per difendermi
 dagli spammer. L'indirizzo  esatto  e`:  
crs...@xxxfreenet.hut.fi
                                   senza le tre x^^^

Newsgroup: it.comp.lang.c
Titolo: Re: Domanda sul compilatore GCC usando MINGW

 Grazie a tutti e scusate per la domanda probabilmente banale.
Ah, non sto usando nessun IDE particolare. Solo Notepad++ per scrivere
il codice e compilo dal prompt di Windows.
Grazie ancora in anticipo.

La Cotica wrote:
http://www.codex.altervista.org/introgcc.html
http://www.network-theory.co.uk/docs/gccintro/


 Grazie a tutti e scusate per la domanda probabilmente banale.
gcc file1.c file2.c mylib.o -lm -o myprogram
?


Ciao!

 dovrebbe trovarsi per fare in modo che il linker lo trovi?
Nella directory dove si trovano gli altri files .c  Per il fatto chr 
ha l'estensione .o gcc non lo compila e lo passa direttamente al 
linker.  Se si trova in altra directory devi specificare il path 
(assoluto o relativo).
$ gcc file1.c file2.c ../altra_dir/mylib.o -lm -o myprogram
oppyre
$ gcc file1.c file2.c  /path_completo_altra_dir/mylib.o -lm -o myprogram
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   < 
http://giovanni.homelinux.net/
 >

-LC:\MinGW\mingw32\lib -lconio
Ciao
Newsgroup: it.comp.lang.c
Titolo: make qualche piccolo dettaglo

Salve sono Carlo...
Vi chiedo aiuto per creare un makefileall ..... cioe' vorrei sapere se e' 
possibile e come creare un make che mi compili piu' file che utilizzano 
piu' librerie ciascuno, situati in cartelle distinte.
Adessso Mi spiego meglio
io ho due cartelle ipotiziamo "Prima" e "Seconda". Le quali contengono risp 
i file primo.c e secondo.c .
Questi file utilizzano rispettivamente utilprimo.a e utilprimo.a, ed 
entrambi util.a. queste lib hanno la sorgente rispettivamente nelle 
cartelle "UtilPrimo" Utilecondo" ed "Util".
Questi tre file sono librerie situate in ~/lib
Bene, io ho creato 5 makefile indipendenti che mi compilano i cinque file 
ognuno contenuto nella propria cartella.
La domanda e':
        E' POSSIBILE FARE UN MAKEFILE CHE COMPILI TUTTI I FILE DEL MIO LAVORO?
Grazzie di eventuali risposte
                        ~~Saluti Carlo~~


si`.
Adieu,
-- 
Lestat de Lioncourt                               |          Ciro Mattia Gonano
  JabberID: 
les...@jabber.students.cs.unibo.it
    |    Undergraduate Student in
  ICQ#: 52631406                                  |         Computer Science at
  URL: 
http://www.CS.UniBO.It/~gonano
             |       University of Bologna
          <powered by Linux Slackware 8.1-rc3 on Kernel 2.4.18-xfs>

        E' POSSIBILE FARE UN MAKEFILE CHE COMPILI TUTTI I FILE DEL MIO LAVORO?
Si: semplicemente gli dai il path (che ti conviene memorizzare in
qualche variabile) o sfrutti la vpath ove possibile.
Il make si puo' spostare durante la compilazione in varie cartelle
oltretutto.
-- 
Mox
"Trust the programmer."
"Don't prevent the programmer from doing what needs to be done."
"Keep the language small and simple."
"Provide only one way to do an operation."
Newsgroup: it.comp.lang.c
Titolo: Quando un programma di due linee di codice non funziona....

...vuol dire che hai fuso il cervello!
Voi che ci vedete di sbagliato in questo codice:
<CODE>
#include <stdio.h>
#include <dos.h>
int main(){
printf("\n\ncazzo non funziona!\n\n");
delay(5000);
return 0;
}
</CODE>
L'output è corretto ma la pausa di 5 secondi non la fa neanche se tiri
una martellata sul computer!
Il compilatore è il DJGPP sotto win2k: sarà questa accoppiata ?!
NM :P

prova qui:
 
http://www.delorie.com/djgpp/v2faq/faq22_27.html
-- 
Valter Mazzola -  Software/Databases for Enterprise Web Internet Sites
PHP, Java Servlets, Applets, Jsp, ASP, PERL, Mod_Perl, Apache, IIS,SQL
* 
HTTP://SITIDINAMICI.COM/?nttp
 ----- 
http://italia.LinSwap.com/?nttp
 
Phone:(+39) 347/129-07-16.  Fax:(+39) 02/700-539-403

NoMan wrote:

Le funzioni dichiarate a dos.h funzionano "solo" su MS-DOS. Beh, alcune 
girano anche su win, ma non e garantito
fermath

Grazie!
NM


Newsgroup: it.comp.lang.c
Titolo: allocazione di memoria

Ciao a tutti,
ho il seguente snippet di codice:
int *p;
*p = 3;
printf("p[%p - %d]:%d\n",p,p,*p)
se lo inserisco nel main del mio programmino funziona correttamente, se 
invece lo metto in una funzione "void f1()", ho un run-time error quando 
cerca di eseguire
*p = 3
mentre se modifico la dichiarazione del puntatore con:
int *p = (int *)malloc(sizeof(int));
...etc...
free(p);
tutto funziona alla grande.
Come mai?
Grazie,
Giulio
-- 
OnAir:

 Come mai?
Perché solo dopo aver allocato memoria per un puntatore, puoi andarci a
scrivere dentro. Nel primo caso non lo fai e vattelapesca dove sta
puntando p. 
Non ti sembra ovvio?
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Non ti sembra ovvio?
Si.
La cosa che non mi sembra ovvia è che nel "main" funziona ugualmente...
Ciao,
Giulio
-- 
OnAir: L'Aura - "E' per te"

 La cosa che non mi sembra ovvia è che nel "main" funziona ugualmente...
Quel codice "funziona" per caso. I puntatori vanno sempre inizializzati.


 
...fattore Q!!!

Newsgroup: it.comp.lang.c
Titolo: Re: aiuto a principiante

 affinche la modifica sia effettiva..
E' un semplice passaggio di un point_t per riferimento, ovvero con
puntatore al point_t da modificare.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

come si fa?
Definita la struttuta point che definisce un punto nello spazio 
bidimensionale con coordinate x ,y si implementi in linguaggio c la 
procedura shiftX che presi come parametri un punto e uno spostamento 
sull'asse x,  trasla la coordinata x di una distanza pari allo spostamento 
specificato. Discutere il passaggio di  parametri che occorre realizzare 
affinche la modifica sia effettiva..Grazie
Lo so per voi è banale... 

 Lo so per voi č banale...
Esercizio da primi corsi di C?
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG