mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c
Titolo: ANSI C: differenza tra ! e ~

Sto valutando se per lo standard ANSi è piu corretto l'uso della
tilde(~) o del punto esclamativo(!) per le operazioni "NOT" su word o
bit.
Per l'ANSI C, quale dei due operatori è corretto usare per eseguire un
NOT logico dei bit di una word?
E se l'ANSI C consente l'uso dei dati di tipo booleano, per eseguire
un not logico, uso il punto esclamativo o la tilde  ?
grazie


! not logico
~ complemento a uno.
non sono la stessa cosa, si usano per cose diverse.
Ciao Jack

Newsgroup: it.comp.lang.c
Titolo: come iniziare

ciao a tutti,
devo riprendere in mano il linguaggio C dopo 10 anni, ho riesumato il
vecchio libro Darnell-Margolis (1997), pensate sia valido ancora oggi?
Mi suggerireste un compilatore e un buon editor open source?
grazie

 Mi suggerireste un compilatore e un buon editor open source?
Se cerchi un IDE, personalmente ritengo che CodeBlocks 
(
http://www.codeblocks.org/
) sia il migliore in questo momento.
Gira su Linux, Windows e MacOSX e usa gcc come compilatore.
Se invece cerchi un editor e basta, su Linux puoi scelgiere tra i 
sempiterni Vi e Emacs oppure provare uno dei tanti editor presenti nelle 
varie distribuzioni. Tanto tempo fa usavo MicroEmacs (che ha una 
versione anche per Windows).
Se lavori su Windows come IDE puoi provare il pelles C 
(
http://www.smorgasbordet.com/pellesc/
) o MS Visual C++ Express (che 
però è solo free, non open source).
Sempre su Windows come editor puoi usare Crimson Editor o PsPad. Io uso 
quest'ultimo insieme a msys per l'ambiente a linea di comando e mingw 
per come compilatore.
Questi sono alcuni di quelli che uso (o ho usato in passato). E' 
difficile dare un consiglio perchè molto dipende dai tuoi gusti e dalle 
tue abitudini (per esempio io odio l'autocompletion). Dovresti 
istallarli e cominciare ad usarli per vedere come ti ci trovi.
Remo.D

 
federoc...@iol.it
 ha scritto:> devo riprendere in mano il linguaggio C dopo 10 anni, ho riesumato il

Scaricato e installato CodeBlocks.
Grazie!
ciao
Newsgroup: it.comp.lang.c
Titolo: Gcc, Djpp, ecc.. su "Io Programmo"

Se a qualcuno puo' interessare il mese prossimo, Marzo, esce il
monografico sul ling.C e C++ della rivista "io programmo" , che
contiene un po' di compilatori (gcc,djpp..) e un sacco di librerie al
"modico" prezzo di 19.900.
Ciriciao 


Tu sia lodato per questa segnalazione. E' una vita che sto cercando
quei dannati compilatori!
E' gia' in edicola il numero di marzo? Ti chiedo perche' sto in un
posto un po' sfigato e quindi in edicola qui si trova ben poco. Te lo
chiedo per sapere se vale la pena sciamare in citta'.
Daniele
Daniele
Togliere NOSP_ dall' indirizzo per eventuali repliche in privato.

chiedo per sapere se vale la pena sciamare in citta'.
A Milano (citta') non e' ancora uscito comunque dovrebbe uscire a
giorni ... ricorda che non e' la rivista "io programmo" di marzo ma e'
un'uscita speciale, una monografia, di quelle che escono ogni due
mesi!! Comunque te ne accorgi dalla copertina.
gasfi


>chiedo per sapere se vale la pena sciamare in citta'.
In provincia di Treviso e' uscita da almeno 20 giorni, io l'ho
acquistato 15 giorni fa. Purtroppo il compilatore DJGPP e' privo di
alcuni file che lo rendono inutilizzabile. 
Ho inviato una mail al ioprogrammo per sapere se era un CD difettoso o
hanno fatto una cazzata (oppure io non ho trovato i file necessari) ma
non mi hanno ancora risposto.
Ciao, Tiziano
Per rispondere rimuovere #NOSPAM# dall'indirizzo e-mail.

...


...


La rivista "Io Programmo" non e' nuova a questi scherzetti, comprate DEV!!
Puoi fornirci informazioni più precise?
--
Francesco Trotta
http://space.tin.it/computer/ftrotta
Elimina "x_" dal mio indirizzo per mandarmi
un messaggio direttamente

Puoi fornirci informazioni più precise?
Yes please. Mi associo alla richiesta.
Daniele
Togliere canc. dall' indirizzo per eventuali repliche in privato.
Newsgroup: it.comp.lang.c
Titolo: lvalue all' estremo!

Ciao a tutti!
giocando un po' con le ottimizzazioni di espressioni, ho voluto portare
all' estremo certe regole e ora ho bisogno di sapere quali sono i limiti
consentiti :)
Come sapete, l' uso degli operatori di assegnazione e di auto incremento
calcolano l' espressione per averne un lvalue.
quindi sono possibili cose cosi':
int * func(int * a) { return a; }
int main()
{
  int aa[10] = {0,1,2,3,4,5,6,7,8,9};
  int a = 10 ,b = 20 ,c = 30;
  (* func(aa+3)) = 100;
  printf("%dn",aa[3]);
  /* o */
  func(aa)[3] = 200;
  printf("%dn",aa[3]);
 
  return 0;
}
ora pero' mo sono avventurato troppo oltre e mi e' successo questo:
#include <stdio.h>
int main()
{
  int a = 2, b = 5, c = 10;
 
  /**/
  ((c)?(*&a):(*&b)) = c;
  /**/
  printf("%d %d %dn",a,b,c);
 
  return 0;
}
Con copilatore GCC 4.1.2 da:
"error: invalid lvalue in assignmen"
e non produce niente.
Con compilatore 3.3.3 installato su in vecchio server da:
"warning: use of conditional expressions as lvalues is deprecated"
e comunque funziona.
con il compilatore 3.3.3 funziona anche una cosa che non speravo cioe':
((c)?(a):(b)) = c;
con lo stesso warning.
Sulla seconda forma concordo, ma sulla prima forma, l' espressione
restituisce esplicitamente un lvalue. Cosa dice lo standard in proposito?
Ciao a tutti.
Roberto.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 restituisce esplicitamente un lvalue. 
In C quell'espressione produce un r-value. In C++, invece, se il secondo e
terzo operatore sono l-value, il risultato è a sua volta un l-value.
I compilatori C che trattano normalmente quell'espressione o emettono
semplicemente un warning, stanno comunque estendendo il linguaggio.
Per lo standard, quell'assegnamento non è ammesso.

Newsgroup: it.comp.lang.c
Titolo: problema liste

Salve
volevo sapere come scrivere una funzione ricorsiva (iterativa la so fare)
del tipo LISTA funz(LISTA l); dove LISTA e' un puntatore alla struttura nodo
di una lista semplice, che prenda come argomento la lista e ne restituisca
una copia della sua inversa
Non ci riesco!
Ciao
p.s. finora ho fatto che crea la lista invertita ma ne restituisce il valore
dall'ultimo elemento.. e quindi non va bene

ho rimediato da solo:
if (ls != NULL) {
  pippo = cpfregno(ls->next);
  if (ls->next == NULL) nuovo = NULL;
  insnodo(&nuovo, ls->dato, nuovo);
}

 lista e ne restituisca una copia della sua inversa
Guarda  che questo  e` un  news group  non un  help desk. Se  nessuno ha
risposto alla  tua richiesta  vuol dire che  nessuno sapeva  la risposta
oppure  non aveva  tempo/voglia. Ripostare  il messaggio  (per giunta  a
distanza di poco tempo) serve solo ad infasidire i frequentatori.
#include <stdlib.h>
#include <assert.h>
typedef struct list_ {
	int data;
	struct list_ *next;
} list_t;
list_t *new_node(int data);
void append(list_t *list, int data);
list_t *reverse(list_t *source);
void reverse_r(list_t *source, list_t **append_to);
list_t *new_node(int data) {
	list_t *tmp;
	tmp = malloc(sizeof(list_t));
	assert(tmp);
	tmp->data = data;
	tmp->next = NULL;
	return tmp;
}
void append(list_t *list, int data) {
	list_t *tmp = list;
	while(tmp->next)
		tmp = tmp->next;
	tmp->next = new_node(data);
}
list_t *reverse(list_t *source) {
	list_t *tmp = NULL;
	reverse_r(source, &tmp);
	return tmp;
}
void reverse_r(list_t *source, list_t **append_to) {
	if (source->next)
		reverse_r(source->next, append_to);
	if (*append_to == NULL)
		*append_to = new_node(source->data);
	else
		append(*append_to, source->data);
}
L'algoritmo non e`  il piu` efficente, ma e` IMHO  il piu` semplice. Per
invertire la lista chiami reverse()  passandogli la testa della lista da
inverire. Il valore  di ritorno sara`  la testa della  lista inveritita.
reverse_r  e`  la parte  ricorsiva  della  funzione  e non  va  chiamata
direttamente.
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
Software is like sex; it's better when it's free.
Linus Torvalds

 distanza di poco tempo) serve solo ad infasidire i frequentatori.
Si, guarda ho postato due volte lo stesso messaggio PER ERRORE non volevo
ripetere la stessa domanda due volte in due post differenti
Chiedo umilmente perdono
Cmq la risposta che ho scritto e' sbagliata ero talmente fuso che credevo
andasse bene :)
Grazie per la tua risposta e soluzione, ora la guardo..
...
mmh ma hai usato un altra funzione reverse_r ?
Purtroppo io non posso, so come fare se uso un prototipo diverso o piu di
una funzione, il problema e' che lo devo fare SOLO con quella PRECISA
funzione!
Sempre se e' possibile!
Ciao e grazie ancora
Newsgroup: it.comp.lang.c
Titolo: Http protocol e C...

dove trovo esempi di implementazione del protocollo HTTP in C??
grazie
ciao

dove trovo esempi di implementazione del protocollo HTTP in C??
E' inutile mandare pių volte lo stesso messaggio, se non si ricevono
risposte significative.  Scarica i sorgenti di Apache.

 dove trovo esempi di implementazione del protocollo HTTP in C?
Cerca CURL.

Newsgroup: it.comp.lang.c
Titolo: Grafica in C

Salve a tutti,
vorrei iniziare ad avvicinarmi alla grafica in C con cose molto banali.
Dove posso trovare le varie informazioni per compiere i primi passi?
Anticipatamente ringrazio.
Vanni

VaNNi GaLLi wrote:

   Discorso troppo ampio per essere affrontato in modo cosi` vago: che 
tipo di grafica e quale piattaforma?
-- 
Alla prossima,
Marco

Ciao,
piattaforma Windows, e per quanto riguarda il tipo di grafica...bè molto
banale!
Mi piacerebbe ad esempio calcolare delle coordinate x e y e poi a stampare
un pixel in quella cordinata , e poi altre cose del genere.
Comunque cose abbastanza banali.
Ringrazio.
Vanni

VaNNi GaLLi wrote:

   Per "grafica banale" in ambiente Windows ti e` necessario conoscere 
solo quella parte dell'SDK che si occupa della gestione dei cosiddetti 
/display context/. Il DC e` un'astazione a "stati" della "tela" 
rappresentata dalla /client area/ della finestra. Molto semplicemente 
(ulteriori informazioni le potrai trovare nel newsgroup 
news:it.comp.programmare.win32), all'interno della tua applicazione 
ottieni il DC di una finestra, ne modifichi lo stato (colore della 
penna, background, forma del pennino) e poi ci "scrivi" dentro le tue 
primitive grafiche, come il pixel. Parole chiave: GetWindowDC, 
UpdateWindow, WM_PAINT...
-- 
Alla prossima,
Marco

Djgpp con libreria allegro.
Se hai gia' carburato con il C nel giro di pochi giorni , con esempi a
corredo, sei gia' in grado blittare uno sprite su schermo con tanto di
scrolling!
Parola.

 wrote in message
news:5qyK7.138065$sq5.6...@news.infostrada.it...

o se vuoi c'è sulla rete il manulae di opengL, secondo me fatto benissimo, 
di Nehe a questo url: 
http://www.multiplayer.it/itaprogaming/docs&tuts/opengl/nehe/
fatto bene ed è in italiano.
caioo
-- 
Posted from 
adsl-99-111.36-151.net24.it
 [151.36.111.99] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Comunque cose abbastanza banali.
Utilizza un ambiente di sviluppo evoluto come C++ Builder.
Ti consente di fare tutto questo con dei buoni livelli
di astrazione rispetto alle API primitive.  Pero', per
essere in tema col ng giusto, parlane su it.comp.programmare.win32.
-- 
Posted from  [80.105.34.80] 



http://www.multiplayer.it/itaprogaming/docs&tuts/opengl/nehe/
Imprecisione...quello che tu indichi è la traduzione del manuale di
Nehe, quello originale + un sacco di altro materiale lo trovi su
http://nehe.gamedev.net
----
Lawrence "Rhymes" Oluyede
rhy...@myself.com
"Quando un uomo siede un'ora in compagnia di una bella ragazza,
sembra sia passato un minuto. Ma fatelo sedere su una stufa
per un minuto e gli sembrerà più lungo di qualsiasi ora.
Questa è la relatività".
Albert Einstein
Newsgroup: it.comp.lang.c
Titolo: socket asincrono!!!!!!!

scusate se scrivo ancora su questo ng (dato le precedenti polemiche
da me non condivise) ma ho trovato qualcuno che sa di tale argomento.
vorrei creare un programmino che invia stringhe di caratteri
come un programma per chattare e che nello stesso tempo riceva
stringhe dall'altra parte della connessione (e fino a qua  niente di
difficile ma vorrei pero che la funzione read o recv non mi blocchi in
attesa di dati vorrei insoma trovarmi sempre nella condizione di
inviare e di essere interrotto quando ricevo una stringa mi aiutate
per cortesia
ciao e grazie

 wrote in message
86fsrp$aq2$1...@nslave1.tin.it...


 da me non condivise)
Una divergenza di opinioni non significa in nessun caso che uno debba
sentirsi "esiliato" da un newsgroup.
EMG

 per cortesia
prova ad usare due thread. Sono un newbye del C, però se vuoi un'idea ho
un AsyncReadSocket scritto in java, magari ti può ispirare....
-- 
Non c'è più forza nella normalità: c'è solo monotonia.

inviare e di essere interrotto quando ricevo una stringa mi aiutate
Prova a leggere UNIX NETWORKING PROGRAMMING di R.Stevens.
Comunque quello che vuoi te è possibile farlo in + modi.
Puoi usare delle select()  per attivarti quando ricevi dei pacchetti
TCP. Questo è il modo asincrono.
Poi ci sono altri modi ( signal driven server per esempio ) ma il
discorso non è facile ne semplice, x cui ti rimando al testo
sopracitato.
Ciao
Fausto

Newsgroup: it.comp.lang.c
Titolo: Salvare dati su disco

Qualcuno può mandarmi una routine per salvare i dati sul disco?
Grazie

 Qualcuno puň mandarmi una routine per salvare i dati sul disco?
Mi sembra una richiesta eccessivamente generica, non credi?
EMG

 Grazie
Scusa ma, che tipo di dati?
-- 
*******************************************************
  "C'e' un vecchio detto a riguardo delle reti che    
  recita: i problemi di banda possono essere risolti  
  con il denaro. I problemi di latenza sono piu' dif- 
  ficili poiche' la velocita' della luce e' una cos-  
  tante e non e' possibile corrompere Dio."           
 
                                     David Clark, MIT 
  Reply to 
bia...@maganet.net
*******************************************************

 Qualcuno puň mandarmi una routine per salvare i dati sul disco?
FILE *f;
f = fopen("file.dat", "w");
fwrite( tuoidati, 1, numerobytes, f);
/* <grin> */
Newsgroup: it.comp.lang.c
Titolo: Trovare il numero di caratteri dal nome di un file

Ciao a tutti, devo scrivere una versione personalizzata del comando ls
sotto linux ma mi sono bloccato in un punto: in pratica devo risalire
al numero di caratteri che conpongono il nome del file all'interno di
una directory per trovare il più lungo in maniera da decidere quante
colonne fare per la stampa a video. Per fare questo mi appoggio sulla
libreria dirent.h che ha questa struttura:
struct dirent {
	long                  d_ino;
	__kernel_off_t   d_off;
	unsigned short  d_reclen;
	char		      d_name[256]; /* We must not include limits.h! */
};
e ho bisogno proprio del campo d_name che mi restituisce il nome del
file, dopodichè usando strlen risalgo al numero dei caratteri, molto
facile a parole ma all'atto pratico mi ritrovo un segmentatio fault che
non riesco a capire da dove salti fuori..
Il mio codice è semplice:
void do_ls(char dirname[])
{
    DIR            *dir_ptr;   /* la directory   */
    struct dirent  *direntp;   /* ciascuna entry */
    if( (dir_ptr = opendir(dirname)) == NULL )
	fprintf(stderr,"ls1: cannot open %s\n",dirname);
    else
    {
	while( (direntp = readdir(dir_ptr)) != NULL )
	printf("%s\n",direntp->d_name);
	closedir(dir_ptr);
    }
}
Ed è funzionante al 100%! direntp->d_name pesca il nome di ogni file
che viene scansionato, per trovare il numero di caratteri pensavo di
utilizzare queste due righe di codice prese da manuale:
size_t len; //per inizializzare la variabile
len = strlen(direntp->d_name); //per trovare il numero dei caratteri
ma mi da segmentation fault.. Come fareste voi al mio posto?
Grazie, ciao.

Aper ha scritto:
 > .....
non si capisce dove metti queste linee:
 > size_t len; //per inizializzare la variabile
 > len = strlen(direntp->d_name); //per trovare il numero dei caratteri
Posta il codice non funzionante. Eventualmente anche un esempio 
dell'output che funziona prima di inserire la strlen().
Ciao
-- 
Cybertoldo
Per rispondermi via email, sostituisci moc.liamg con 
gmail.com

 dell'output che funziona prima di inserire la strlen().
Si, hai ragione:
void do_ls(char dirname[])
{
    DIR            *dir_ptr;   /* la directory   */
    struct dirent  *direntp;   /* ciascuna entry */
	size_t len;
    if( (dir_ptr = opendir(dirname)) == NULL )
	fprintf(stderr,"ls1: cannot open %s\n",dirname);
    else
    {
	while( (direntp = readdir(dir_ptr)) != NULL )
		len = strlen(direntp->d_name);
		printf("len=%d", len);
	        printf("%s\n",direntp->d_name);
	        closedir(dir_ptr);
    }
}
Comunque facendo il gdb ho scoperto che è la strlen che causa il
segfault..

 segfault..
metti a posto il blocco while() sopra.


Cybertoldo ha scritto:

E' vero, alla fine era solo un errore di parentesi.. colpa mia.. :-(
Grazie per le risposte!
Newsgroup: it.comp.lang.c
Titolo: C e sockets

Ho un problema che riguarda la riconnessione automatica:
ho un server e un client scritti in c e compilati con lcc sotto
ambiente windows.
il mio client si connette con un altro pc con un altro programma
server;
il mio server viene connesso con un altro pc con un altro programma
client.
----
Il mio server dovrebbe rimettersi in attesa di una nuova connessione
quando il client si disconnette. Per verificare la disconnessione al
momento ho messo la condizione di ricezione di zero caratteri; quando
succede questo il server ritorna nella funzione accept.
La maggior parte delle volte perň il programma si ferma... :(
Come posso verificare la disconnessione del client in maniera piů
corretta?
----
il mio client invece dovrebbe verificare se il server č ancora
attivo(al momento č il mio server che non ricevendo piů un messaggio
di live dice al mio client che l'altro server č spento) e in caso
contrario disconnettersi e riprovare la connessione finchč non ci
riesce.
Al momento il mio client ripete ciclicamente la connect, ma non mi da
il risultato sperato. Sembra infatti che il mio client si connetta
all'altro server, ma quando spedisce un messaggio, l'altro server non
riceve niente...
Spero che qualche geniaccio di voi riesca a darmi una soluzione perchč
io non so piů dove sbattere la testa! :-/
Grazie in anticipo a chiunque possa o vorrebbe darmi una risposta!
ciao!

 riceve niente...
Qui si mi sono aggrovigliate le meningi...
- Dario
Newsgroup: it.comp.lang.c
Titolo: Comandi & funzioni C sotto Linux

Salve,
inizi adesso con la programmazione C sotto Linux.
Come posso fare per conoscere tutte le funzioni e comandi messi a
disposizione del GNU C ?
Esiste una guida? o siti dove prelevare informazioni.
Grazie mille.
Per favore rispondetemi anche in email.

inizi adesso con la programmazione C sotto Linux.
it.comp.linux.development.
Cordialmente,
Gianni Rondinini, programmer and designer at Pierre s.n.c.
e-mail: mailto:
pie...@mail.asianet.it
homepage: 
http://www.geocities.com/Eureka/Plaza/7153
Red Hat Linux user since 9/25/97
If a train station is where the train stops, what is a work station?

 Esiste una guida? o siti dove prelevare informazioni.
Si`, ci sono le info pages del glibc che dovresti avere.. prova a
leggerle con 'info' o sotto emacs.  Io le trovo molto utili.
Ciao,
-- 
David Welton                          
http://www.efn.org/~davidw
 
	Debian GNU/Linux - 
www.debian.org
Newsgroup: it.comp.lang.c
Titolo: Tic Tac Toe

Ciao a tutti,
i have a dream ;-) sto studiando il C e mi piacerebbe poter esaminare un
sorgente in puro C (preferibilmente platform indipendent) di Tic Tac Toe...
potreste indicarmi dove scaricarlo o inviarmelo a rand0m [che è un utente
di] 
inwind.it
?
Ho già provato su 
freshmeat.net
 ma ci sono versioni con troppi fronzoli
(tipo con i socket per giocare in rete, ecc...): io cercavo una cosa molto
semplice (anche in ASCII) che permettesse di giocare contro il computer
giusto per capire come funziona. ;-)
Grazie,
Lorenzo

Ciao,
interesserebbe anche a me!
Esiste qualcosa?
Grazie.
Vanni

Provate su 
http://www.programmersheaven.com
C'è tutto ;)
Dome
--
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
PC Brain Official Web Site
http://digilander.iol.it/pcbrain
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
Newsgroup: it.comp.lang.c
Titolo: CERCO COMPILATORE C

salve ragazzi ditemi dove posso scaricare un compilatore C/C++ per win

 wrote in message
news:385ec...@linux5.provincia.ps.it...


Newsgroup: it.comp.lang.c
Titolo: Un'opinione su un caso di integer promotion

Non è la prima volta che mi trovo a compilare del codice come quello che 
segue, con compilatori diversi, ottenendo sempre warning:
----
   char	a, b;
   unsigned short  i, j;
   ...
   a += b;
   i += j;
----
Ora, l'unica soluzione, per rendere il codice pulito dai warnings, 
sembra essere:
----
   a = (char)(a + b);
   i = (unsigned short)(i + j);
----
che oltre a risultare prolissa, rende praticamente inutile l'uso 
dell'operatore "+=", o perlomeno ne viene scoraggiato l'uso con i tipi 
di dimensioni inferiori a int (a seconda dell'ambiente).
Sono uno dei pochi, irritati da questo fenomeno?
Lou


E' linguaggio C e per me è corretto questo comportamento.
--------------------------------
Inviato via 
http://usenet.libero.it

 [...]
Col gcc 3.2 e 3.2.2 sotto Linux non mi da' nessun warning.
Col gcc 3.0.2 sotto Digital Unix non mi da' nessun warning.
Col cc (non so la versione) sotto Hp-Ux non mi da' nessun warning.
Non ho altri compilatori a disposizione.
Boh.
Ciao,
Ema

Newsgroup: it.comp.lang.c
Titolo: Help!!!

Ciao a tutti,sono nuovo in questo ns e avrei bisogno di un po' di
aiuto.
Mi trovo a dover sostenere un esame in unuiversità nel quale dovbrei
presentare un progetto che implementi la concorrenza fra thread con
codivisione di risorse...io avrei pensato a qualche giochetto...volevo
sapere se qualcuno puo darmi qualche informazione su dove trovare
qualcosa di gia pronto da poter eventualmente modificare.
Grazie a tuuti quanti.
Ciao Ciao
Alessandro

 Grazie a tuuti quanti.
prego
-- 
Gerolamo
Newsgroup: it.comp.lang.c
Titolo: Esecuzione "passo-passo" su Linux/Unix

Ho una Suse7.1 e sto facendo una tesina in C con un unico file sorgente che
quindi compilo con gcc..l'output dell'eseguibile lo vedo con Kdevelop
tramite il debugger Kdbg...come faccio ad effettuare un'esecuzione
pasoo-passo del programma su Linux/Unix per verificarne gli errori invece di
seminare printf a destra e a manca??
thanxx
--
se c'è scritto Microzozz  non funziona....

 gli errori invece di seminare printf a destra e a manca??
devi compilare con -g e non fare strip o compilare con -s
poi con step o next segui il tuo prog.
PS: ddd e' meglio, o anche gdb + tk

 devi compilare con -g e non fare strip o compilare con -s
il problema è proprio questo..oggi ho provato a debuggare con gcc scrivendo
"gcc -g  sorgente.c"
ma quando apro la sorgente con Kdbg mi dice in basso "No debugging symbols
found"
inoltre ho ovviamente bisogno dell'eseguibile("gcc -o out sorgente.c") che
però vorrei costruire includendo l'opzione -g
In ogni caso vi supplico (:-)))) ) ,se avete un metodo sicuro per
l'esecuzione passo-passo da terminale di un file C con una sola sorgente
ditemelo(passo-passo però che non sono un esperto) cosi finalmente ne vengo
fuori..
cmq vada...grazie mille

 gcc -o out sorgente.c <---- aggiungere -g pure qui
$ kdbg ./out
e dovrebbe andare... 
se non va, prova gdb out
se anche lui ti dice no symbol found, cambia versione al compilatore
altrimenti cambia debugger e passa a ddd

altrimenti cambia debugger e passa a ddd
ma DDD si basa su gdb. Se non funziona il secondo non funziona neppure
il primo.
Anto
--
Antonio Cuni, 19 anni, studente
Brainbench C++ Master: 4.6, higher than 98% of all previous test takers.
C Language: 3.32, higher than 79% of all previous test takers.
Guida C/C++ di Programmazione.it: 
http://cpp.programmazione.it

 il primo.
appunto rileggi meglio

Newsgroup: it.comp.lang.c
Titolo: Help funzione "misteriosa"

Salve a tutti,sto seguendo un manuale di C e mi sono imbattuto
in una funzione che proprio non riesco a capire.Lafunzione
calcola una qualsiasi potenza maggiore o uguale a zero...
double pot(double base,int esp)
{
double po;
po=1;
if(esp==0)
 return(1);
else {
while(esp-)po*=base;
return(po);
}
}
Mi chiedevo:che significa quell'argomento esp- nel
while?E'possibile che sia un'errore di stampa del manuale?
Anche perchè il compilatore mi segnala un'errore di sistassi
proprio prima di )
Vi prego (e vi ringrazio) di rispondermi con parole "semplici"
perchè sono un newbye.

 while?E'possibile che sia un'errore di stampa del manuale?
è while(esp--)
-- come l'operatore per deincrementare
-- 
Rhymes (rhy...@NOSPAMmyself.com)
linux registered user #219707
linux registered machine #172395
Newsgroup: it.comp.lang.c
Titolo: problemi lettura file

 
          se io devo leggere da un file utilizzo una fscanf e mi legge dall alto verso
il basso, riga per riga.
se io ho un file contenente:
0 1 1
0 5 6
1 3 2
con una fscanf, alla quale chiedessi di leggere 3 variabili, con la prima
scanf, mi leggerebbe 011 poi ,con la successiva 056 etc.
se io volessi leggere prima 132 poi 056 e poi 011 come potrei fare?
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 se io volessi leggere prima 132 poi 056 e poi 011 come potrei fare?
Non puoi.  Il tipo di lettura di un file di testo è sequenziale.

 Potresti usare una combinazione di ftell/fgetc ma devi conoscere 
dimenticavo fseek...
-- 
Devaraja (Xdevaraja87^gmail^c0mX)
Linux Registerd User #338167
http://counter.li.org

 se io volessi leggere prima 132 poi 056 e poi 011 come potrei fare?
Potresti usare una combinazione di ftell/fgetc ma devi conoscere 
*esattamente* la struttura del file, perche' cosi' leggi semplicemente 
dei caratteri e non puoi usare un filtro come in scanf.
Se invece ti interessa solo averli ordinati per usarli successivamente 
li leggi come sono, li inserisci in una matrice e fai le opportune 
trasformazioni


Adesso ti spiego il mio problema.
Il mio file txt contiene gli archi di un grafo. Ogni riga contiene: arco in
ingresso, arco in uscita, peso dell'arco. Gli archi sono messi in ordine per
nodo di ingresso.
Io devo accedere a queste righe in un ordine che dipende dall'algoritmo del
cammino minimo che il mio programma usa. Se ogni volta devo ripartire
dall'inizio del file per poter poi arrivare alla riga corretta ci mette una
vita. Pensavo di spostarmi in su e in giů dalla posizione corrente ma non
saprei come. Ad esempio se voglio gli archi che partono da 3 e uso fseek
dicendogli di risalire fino a che non trova il 3 mi becca un 3
qualsiasi....Come posso fare?


 dei caratteri e non puoi usare un filtro come in scanf.
Se, come mi pare di capire, il file e` aperto in modo testo fseek puo`
essere usata solo per riposizionarsi in un punto del file
preventivamente memorizzato tramite ftell.
Questo perche` la libreria internamente effettua le conversioni
necessarie (ad esempio trasforma la sequenza di newline dipendente
dall'OS in '\n') e, quindi, a priori non e` possibile posizionarsi in
modo random nel file.
Questa restrizione non vale per i sistemi aderenti lo standard POSIX,
che non prevede distinzione tra file aperti in modo binario ed in modo
testo; in altre parole quello che viene passato alla libreria verra`
scritto senza alterazioni su disco e viceversa.
Luca
-- 
Home: 
http://kronoz.cjb.net
42

 ingresso, arco in uscita, peso dell'arco. Gli archi sono messi in ordine per
No, allora in questo caso, considerando anche quello che ha detto 
Kronos, non puoi fare come ti ho detto senza fare un casino incredibile.
Premetto che non so nemmeno di cosa stai parlando :-) ma l'altra 
soluzione (quella della matrice) non andrebbe bene?


Se fai un file binario e ti salvi la matrice di adiacenza su di esso?
---------------
www.vettigli.tk
Newsgroup: it.comp.lang.c
Titolo: reset??

Ciao a tutti: come posso fare per invocare (in C o in ASM) la routine di
RESET?
Qualcuno saprebbe scrivermi un codice che eseguito mi resetta il pc?
Grazie.
Castor

 RESET?
Sotto DOS, chiama l'INT 19h.
Sotto Windows, chiama un file batch (come sotto dos) che chiama la funzione
di spegnimento della macchina nelle API. Non ricordo con esattezza, ma una
riga del tipo: rundll32 nome_funzione (basta guardare la documentazione)
--
Alessandro Monti

 Castor
Mi sembra che una volta col dos si faceva :int 19h ora non so piu' se
funziona.


Sia in Dos che in Windows.
Reset()
{
    __asm    mov     al, 0FEh        ; Reset CPU
    __asm    out     064h, al
}

 Qualcuno saprebbe scrivermi un codice che eseguito mi resetta il pc?
La funzione riportata sotto non resetta.....spegne direttamente......
Non sò se può esserti utile però...
int disco = 1;
void far interrupt13h(void)
{
    int vecchioint13h;
 asm mov word ptr disco,0x00;
    asm pushf;
    asm call dword ptr vecchioint13h;
    asm mov word ptr disco,0x01;
#if __TURBOC__ > 0x0200
    asm pop bp;
#endif
    asm iret;
}

 La funzione riportata sotto non resetta.....spegne direttamente......
Il mio PC non può essere spento via software.
EMG

 Il mio PC non può essere spento via software.
Allora come fai a spegnerlo????
Stacchi la spina???
NoBoDy

 Stacchi la spina???
No, spingo semplicemente l'interruttore.
EMG

 No, spingo semplicemente l'interruttore.
Anche io. Ma il mio PC è ormai vecchio di ben 4 anni! Sarà ora di buttarlo
via e prenderne uno che si spenga via SW :-)
--
Alessandro Monti


A parte il fatto che il PC che ho (anche il mio vecchio di 4 anni) va
benissimo per il mio lavoro, tutto il discorso era per far capire che
parlare di argomenti dipendenti dalla macchina in questo newsgroup è
abbastanza inutile.
EMG

 abbastanza inutile.
Sono pienamente d'accordo con te.
Mi era però sorto il dubbio che la "dipendenza dall'HW" potrebbe essere
semplicemente una "dipendenza dal tempo".
Ovvero: praticamente ogni PC ormai si spegne da SW, per cui si possono
considerare delle "anomalie" o "architetture particolari" quelle poche
macchine superstiti che hanno ancora il pulsantone...
Il tutto però potrebbe anche essere semplicemente un mio delirio personale
da orario notturno :-)
--
Alessandro Monti
Newsgroup: it.comp.lang.c
Titolo: Compilare con GNU-Win32.

---------------------------------------------------------<

Per compilare il codice sotto windows, è giusta la riga di comando che avete
trovato, ossia: gcc nomefile.c  -lnomelibreria -Wl,-subsystem,windows
(oppure gcc -o nomefile.exe nomefile.c ...).
es. "gcc test.c -luser32 -Wl,-subsystem,windows".
Questa è la sintassi corretta. Se con il vostro codice non funziona, è
probabile che non abbiate indicato le librerie a cui si riferisce il vostro
sorgente. Per esempio se utilizzate della grafica, è necessario includere la
libreria - gdi32 -. Quindi la riga di comando sarà:
gcc test.c -luser32 -lgdi32 -Wl,-subsystem,windows.
E' vero, in questa versione non è incluso un compilatore di risorse.
Avete bisogno del programma - res2coff.exe -, che potete scaricare
facilmente navigando tra i link del sito principale.
Sarebbe anche una buona scelta, scaricare il compilatore - egcs mingw32 (non
mi ricordo esattamente il nome) -, con il quale potrete realizzare programmi
indipendenti dalla libreria - cygwin32.dll - e in cui è presente il
compilatore di risorse - windres.exe -.

Cygnus.
Preso in considerazione lcc? Ha un buon IDE, pero' compila solo C, ed
e' instabile. Almeno e' semplice e leggero, e i tool di supporto sono
interessanti.
(Elimina il papero per le repliche)

 compilatore di risorse - windres.exe -.
 Io ho scaricato Minimalist GNU-Win32 version 0.1.4, però temo che al suo
interno non ci sia nessun WINDRES.EXE (l'ho scaricato almeno da un mese) (:-((
Ad ogni modo, non sono riuscito a Compilare lo stesso "famoso" esempio
configurando il sistema GNU-Win32 perchè, con gli stessi parametri, mi dava i
seguenti errori:
  C:\mingw32\lib\crt0.o(.text+0x5):crt0.c: undefined reference to `_CRT_glob'
  C:\mingw32\lib\crt0.o(.text+0x19):crt0.c: undefined reference to
`__GetMainArgs'
  C:\mingw32\lib\crt0.o(.text+0x24):crt0.c: undefined reference to `__imp__iob'
  C:\mingw32\lib\crt0.o(.text+0x45):crt0.c: undefined reference to `_fpreset'
  C:\mingw32\lib\crt0.o(.text+0x6d):crt0.c: undefined reference to `_cexit'
  GCC.EXE: Internal compiler error: program ld got fatal signal 1
Purtroppo sono ancora un po' impedito con i compilatori a Riga di Comando e non
ho capito esattamente a cosa sono dovuti questi errori (?:-/
(premetto che ho Copiato - e non spostato come fa il file batch move-win32.bat i
vari files header e lib, nonchè aggiunto i vari SET come da README.TXT)
Comunque ti ringrazio nuovamente per avermi risposto !!
Ciao, UDA.


Davide Quack wrote:

 Tra i vari compilatori Freeware che ho provato c'è pure questo; l'ho trovato
di ottima fattura, soprattutto l'editor delle risorse (pensavo di abbinarlo,
se possibile, allo GNU-Win32, dato che in quest'ultimo manca ...), però
vorrei programmare in C++ e purtroppo, come tu stesso affermi, può elaborare
solo codice C .... peccato.
Grazie per il suggerimento e Ciao, UDA.

Newsgroup: it.comp.lang.c
Titolo: accesso diretto ai floppy disk ed ai cd rom

Ho un grosso problema con il Turbo C++ 3.0 della Borland (lo so che è
vecchio ma è tutto quello che sono riuscito a trovare!)e con il Borland C++
5.02 che ho trovato in una rivista:non riesco ad accedere direttamente ai
file contenuti in supporti diversi
dal disco fisso :ho provato con fopen ma il programma non esegue
nulla!Preferirei fare tutto a livello di C++ ma anche le api di windows
possono andare.Non c'e  qualcuno che possa aiutarmi?Grazie infinite a
chiunque mi risponda!

il programma non esegue nulla!
Perche' non ci fai vedere come usi la fopen e cosa metti (e anche come
viene definita) nella variabile che passi come primo parametro (nome
file) ?
ciao

valvern ha scritto nel messaggio ...

Lo uso piů o meno cosě:
...
FILE *handle; // dichiaro una variabile di tipo FILE
handle==fopen(nomefile,"rb"); // apro il file in lettura binaria
fscanf(handle,"%c",&c); // leggo dei dati dal file e li pongo in una
variabile c
...
cosě il file nomefile dovrebbe venire aperto in lettura binaria qualunque
sia il drive(l'help in linea dice di mettere in nomefile il nome del file
completo di percorso e drive) o almeno cosě mi sembra di capire dall'help in
linea(in inglese) del compilatore.Altrimenti mi chiedo:a cosa seve mettere
il drive se l'istruzione funziona solo per il disco fisso?

 il drive se l'istruzione funziona solo per il disco fisso?
Deve funzionare anche con qualunque drive. Ricordati che se nel percorso
ci sono delle backslash queste vanno sostituite con doppie backslash.
EMG

il drive se l'istruzione funziona solo per il disco fisso?
L'istruzione funziona anche per i floppy.
ciao
p.s. io non sono un gran programmatore in C pero' ho il Turbo C++. Se
hai bisogno scrivimi pure in e-mail

valvern ha scritto nel messaggio ...

Ti ringrazio per avermi risposto in modo chiaro;ero arrivato a pensare di
avere un compilatore scassato(non si sa mai!) o di essermi rimbambito del
tutto,poichè programmo in C da due anni a livello scolastico e avevo usato i
file solo sull'hard disk(non ho mai avuto problemi)ed ora stavo tentando di
approfondirne la conoscenza per poi passare al C++.Grazie ancora!


Ringrazio anche te di avermi risposto:il fatto č che la mia conoscienza del
C č a livello scolastico e sto cercando di approfondirla per passare al
C++.Fopen l'ho sempre usata per l'hard disk e non mi aveva mai dato
problemi(non mettevo le doppie backslash).
Grazie!

 pochissime oparazioni di i/o
Perň se lo stream č bufferizzato non dovrebbe esserci alcuna differenza
(vedi setvbuf()).
EMG

appartiene al range di quelli accettabili per un byte (0-255).
Mi sono fatto trarre in inganno dall'esempio riportato dal TurboC dove
usa una variabile di tipo char per memorizzare il valore restituito da
fgetc(). In effetti la variabile dovrebbe venir definita come int e
quindi puo' distinguere tra l'EOF (0xFFFF) e i 256 caratteri possibili
(0x0000-0x00FF).
ciao
Newsgroup: it.comp.lang.c
Titolo: Aiuto ...per favore  correttezza codice .Grazie

Non credo che nessuno non sia in grado di rispondere al mio quesito.
Rinnovo la mia richiesta di aiuto.Grazie
Devo verificare tramite triple di Hoare la correttezza del seguente
codice:
            totale = array[max];
                 for(j=max-1;
                       (j>=0);
                            --j)
              totale = (totale * val) +array[j];
E' corretto cio che segue ?
 precondizione P = (max-1 >= j >= -1) and ( totale = (totale * val)
+array[j] )
 postcondizione R = totale = (totale * val) +array[j]
 funzione tempo residuo ( decrescente al crescere del numero di
iterazioni  tr(j) = (max-1) -j
 Ho un dubbio su quest'ultima deve essere tr(j)=(max-1)-j  oppure
tr(j)= -1+j
 ( ho messo -1 in quanto j arriva a -1 in uscita dal ciclo )
 Come dovrei fare per verificare il terorema dell'invariante di ciclo
cioe' verificare :
 invarianza,progresso e limitatezza ?
 Vi ringrazio molto.

>  Vi ringrazio molto.
Il problema e' che questo e' un newsgroup riguardante il C. 
Il quesito che poni non riguarda il C ma la verifica di un teorema
scritto in C.
Io non conosco le "triple di Hoare", prova su un newsgroup di matematica
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Newsgroup: it.comp.lang.c
Titolo: [C] concatenazione di files binari

Ciao, chi mi aiuta? Vorrei concatenare due files pdf per averne uno
solo, č possibile?
Grazie
Nicola

 solo, è possibile?
Concatenare due file binari e`  banale. Concatenare due file pdf in modo
che il  risultato sia  un file  pdf valido no. Non  dipende dal  C, devi
manipolare file  PDF (o meglio,  trovare una  libreria che lo  faccia al
posto tuo) in modo da inserire il contenuto del secondo nel primo.
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
Software is like sex; it's better when it's free.
Linus Torvalds
Newsgroup: it.comp.lang.c
Titolo: LCC, qualche pena....

ciao a tutti.
prima cosa ringrazio mox per la gentile risposta!
poi chiedo a chi usa LCC una cosetta...
oltre ad aver cominciato da poco col c, da poco sono passato dal turbo c
a LCC e quel che non capisco e'la logica dei cosiddetti progetti.
possibile che non posso scrivere compilare eseguire un prog senza dover
passare attraverso il create di un progetto? va tutto bene
finche'contiene un solo file, quando provo ad aggiungerne un altro
cominciano i problemi. a volte mi compare un amletico Don't know how to
make myfile.exe o qualcosa di simile. se non lo sa lui... oppure
continua ad eseguire il prog lanciato immediatamente prima del nuovo
aggiunto, seppur il codice di quest'ultimo compaia sulla finestra
dell'editor.
in breve, qualcuno potrebbe gentilmente suggerirmi una semplice
procedura per creare un unico progetto (visto che non sembra si possa
farne a meno) ed aggiungere volta per volta i miei nuovi file e lavorare
tranquillamente?
grazie a chi sapra'comprendere le difficolta'di un principiante!
mirko
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ciao a tutti.
[cut]
Se devo dirti la verità LCC mi fa diventare scemo, ma posso dirti come
risolvere il tuo problema.
Se vuoi fare un lavoro su più file devi procedere così:
1. File->New->project
2. inserisci i vari dati (nome progetto, cartella di lavoro, crei un
"nomefile.c",clicchi su "apri")
3. adesso dovresti essere in una maschera chiamata "Source files for
project"
4. Se sai già da adesso quali saranno gli altri file *.c o *.h clicca su
"Add new file..." e inseriscili
5. Se non lo sai prosegui...
6. Adesso sei nella pagina principale dell'editor dove puoi scrivere. Se
vuoi aggiungere nuovi file vai su "Project" (tra "search" e "design")->
"Add/Delete files".   Ti sei ricondotto al caso descritto nel punto 4.
Spero di averti risolto qualcosa.
Ciao.
Cendo

 Cendo
ciao Cendo,
grazie per la risposta.
in effetti avevo gia' tentato la procedur che mi hai consigliato, ma il
piu' delle volte riesco ad aggiungere il file ma non compilarlo. se
guardo nella cartella del project il nuovo file e' presente e pur
essendo in bella vista nella finestra dell'editor non riesco a
compilarlo ed eseguirlo.
e' in questo momento che mi compare l'enigmatico meggaggio Don't know
how to make file.exe. devo dire che pero' una volta, solo una, sono
riuscito nell'operazione ed avere due file che lavorano nello stesso
progetto. ma e' stato durante una serie di tentativi disperati in cui
provavo un po' tutto e non saprei ripetermi. ma stasera riprovo
speranzoso...
ciao

Newsgroup: it.comp.lang.c
Titolo: Interrupt

Ciao,
qualcuno sa dove posso trovare informazioni riguardanti gli interrupt
del dos, in particolare quelli riguardanti l'uso del mouse?
Grazie in anticipo,
Nicola

del dos, in particolare quelli riguardanti l'uso del mouse?
 Se hai tempo e voglia puoi scaricarti la Ralf Brown's Interrupt List:
www.cs.cmu.edu/~ralf/files.html
 (alcuni file in formato .ZIP, sono 
c.ca
 3 MB ma
puoi anche non scaricare tutto).
 Altrimenti puoi consultare 
www.ctyme.com/rbrown.htm
 che è una traduzione
interattiva (HTML) della lista di cui sopra.
        Bye
        Sky
/* togliere il '-' davanti all'e_mail
    per rispondermi direttamente
    oppure 
men...@writeme.com
 */


Int 33h :-)
Se ti può interessare ho una unit (in Pascal) con varie istruzioni per il
mouse... comunque è totalmente in assembler (ma sono veramente 3 righe per
istruzione) :-)
Ciao
Emanuele Cesena
d.a.m...@iol.it
ICQ n° #10570672
http://www.geocities.com/SiliconValley/Grid/8879
"Il proiettile in arrivo ha diritto di precedenza"

Newsgroup: it.comp.lang.c
Titolo: rinomino files

Ho un'applicazione che mi genera dei numeri files sequenziali tipo :
nome_frame_0.jpg
...
nome_frame_10.jpg
...
nome_frame_100.jpg
il problema è che non posso ordinarle facilmente perché non crea la giusta
numerazione con tutte le cifre come ad esempio 00 01 02 ..10 ...
per cui dovrei fare un'applicazione che mi trasformi i nomi dei files con
tutte le cifre e cioè:
nome_frame_000.jpg
...
nome_frame_010.jpg
...
nome_frame_100.jpg
Un suggerimento ?
Grazie
ALe

Un suggerimento ?
   sprintf(nomefile,"%s_%03i.jpg",nome,numero);
HTH
Andrea

numerazione con tutte le cifre come ad esempio 00 01 02 ..10 ...
e perché lo dovresti fare, per ordinarli basta prendere il numero che
sta tra il punto e "_" e associarlo alla stringa
Newsgroup: it.comp.lang.c
Titolo: Un libro sul C

Ciao a tutti,
solo una semplice domanda.
Ho visto su una libreria on-line il libro
"Linguaggio C" di K&R., edito dalla Jackson.
Mi chiedevo se questo libro è la traduzione esatta
del ben noto "the C programming language".
Grazie,
Ale

guarda gli autori.... se sono K&R anche nel testo in italiano
é la traduzione... cmq mi pare che jackson abbia inserito
quel volume come traduzione dell'originale
ora non rammento
antonio

Io ti posso dire che il libro è effettivamente la traduzione del libro
originale ma non ti so dire con certezza se è la traduzione ESATTA oppure
no. All'Università Cà Foscari di Venezia lo usiamo come libro di testo...eh
eh
Ciao
Blueb@ck


Ciao mi potresti dare l' indirizzo del sito dove l' hai trovato ? Mi
interesserebbe consultare questo libro - Grazie
"@less@ndro" <nob...@nowhere.invalid> ha scritto nel messaggio
news:96jqp6$erl$2...@lacerta.tiscalinet.it...


del ben noto "the C programming language".
Si'.  Tieni presente che del libro esistono due versioni.
Una piuttosto vecchia e la seconda uscita ultimamente che reca il
disegno del timbro "ANSI"...
Quest'ultima non e' allineata al 100% con lo standard pero' e' la
migliore delle due.
--
Andrea Laforgia (ICQ 87230455)
http://www.geocities.com/AndreaLaforgia
"ci sono tre tipi di persone nel mondo : quelli che
 sono bravi in matematica e quelli che non lo sono."


www.internetbookshop.it
ma non credo che il libro sia consultabile (senza ordinarlo).
@le

 migliore delle due.
Ultimamente quando?
Il libro che ho visto io č un'edizione del 1989.
D'altra parte anche la seconda edizione del testo in inglese č, se non erro,
dell' 88.
Mi pare comunque che il thumbnail mostrasse il disegno di cui parli in
copertina, ora riguarderň.
Mi puoi dare un'opinione anche su questi:
- C: a reference manual, di Harbison;
- C: a modern approach, di King.
Esistono le versioni italiane di questi due?
Grazie,
@less@ndro

 eh
Nella versione Jackson ci sono 112 pagine in più...
...formato di stampa ridotto?
Grazie,
@le

 wrote in message
7cfs8t42n6rhbjb3b...@4ax.com...

Nell'ed. Jackson ci sono 112 pagine in piů.


Esistono le versioni italiane di questi due?
Non lo so.


 Ottimo.
Anche da un punto di  vista diciamo "didattico" ?

Newsgroup: it.comp.lang.c
Titolo: [RM] cerchiamo con urgenza programmatore C

  Inviare CV all' indirizzo 
in...@symbolica-net.com
  Si richiede disponibilità immediata
  -------------------------------------------------
--
Posted from 
mta09-acc.tin.it
 [212.216.176.40]
via Mailgate.ORG Server - 
http://www.mailgate.org

 richiede disponibilità immediata
  Vabbe`, ma voi che offrite?
Newsgroup: it.comp.lang.c
Titolo: PASSWORD SOTTO GLI ASTERISCHI

    STO REALIZXANDO UN PROGRAMMA, CHE CHE COME PRIMA OPERAZIONE CHIEDE UNA
PASSWORD, NON RIESCO A CAPIRE, PERO' SE E' POSSIBILE NASCONDERE LA PASWORD
CHE L'UTENTE INSERIRA' SOTTO GLI ASTERISCHI. GRAZIE ANTICIPATE PER LE
RISPOSTE CHE MI DARETA.

 RISPOSTE CHE MI DARETA.
Vado di fretta e non posso darti una risposta, ma posso darti
un consiglio : evita di scrivere in maiuscolo, non fa parte
della netiquette, scrivere in maiuscolo equivale ad urlare :)
Ciao Max
+-----------------------------------------------------------+
| Secondo alcuni autorevoli testi di tecnica Aeronautica,   |
| il calabrone non può volare, a causa della forma e del    |
| peso del proprio corpo in rapporto alla superficie alare. |
| Ma il calabrone non lo sa e perciò continua a volare.     |
|					     Igor Sikorsky  |
+-----------------------------------------------------------+



non in C standard. utilizza librerie per la gestione del tuo terminale a
basso livello
Ciao

Newsgroup: it.comp.lang.c
Titolo: Problema qsort(), aiutatemi...

Sono ultra-disperato, non funziona dopo tantissime prove.
Riesco a leggere le righe dal file ma quando le voglio ordinare ci riesco
se il file contiene fino a 9 righe, poi il programma mi si blocca!!
Vi posto il codice:
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
FILE *fp;
char str[111];
int righe=0;
int compara_double(const void *a, const void *b);
int main()
{
        int i,x;
 
        fp = fopen ("hh.txt","r");
        while ( !feof(fp) )
        {
         fgets(str,100,fp);
         righe++;
        }
        fclose(fp);
        printf ("%d elementi nel file.\n",righe);
        char array[righe-1][200];
 
        fp = fopen ("hh.txt","r");
        for (x=0;x<righe;x++)
         {
          fgets(array[x],100,fp);
          array[x][strlen(array[x]) - 1] = '\0';
         }
        fclose(fp);
 
 
        printf ("\nprima di qsort()\n");
        for (x = 0; x < righe; x++)
                printf("array[%d] = %s\n", x, array[x]);
 
 
        qsort(array, righe, sizeof(array[0]), compara_double);
 
        printf ("\ndopo qsort()\n");
        for (x = 0; x < righe; x++)
                printf("()array[%d] =  %s\n", x, array[x]);
 
 
        return 0;
}
int compara_double(const void *a, const void *b)
{
        const char *da = (const char *) a;
        const char *db = (const char *) b;
        return (strcmp(a, b));
}
Il contenuto del file hh.txt è il seguente:
[non funzionante]
mimmo 
puzo 
luca 
luco 
ddd 
luigi 
massimo 
marco 
piero 
jj 
[funzionante]
mimmo 
puzo 
luca 
luco 
ddd 
luigi 
massimo 
marco 
piero 
Mi potete aiutare?
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

         return (strcmp(a, b));
Gia' detto, ma pure per strcmp serve <string.h>. E poi, "da" e "db" non 
li usi.
-- 
Mat/tia Belletti - Undergraduate student @ 
cs.unibo.it
ICQ: 33292311    - email: 
mbel...@cs.unibo.it
IRC: RedGlow     - site(s): 
http://www.cs.unibo.it/~mbellett
Linux registered user 299762 @ Linux registered machine 213003