mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c
Titolo: Mouse in Vesa Mode - ECCO IL LISTATO DEL MESSAGGIO PRECEDENTE

#include <stdio.h>
#include <mem.h>
#include <conio.h>
#include <dos.h>
void main(void)
{
int bank,bankshift;
int x, y, ofs;
union REGS regs;
// ---- setta la modalità vesa a 640x480x8-----------
	asm mov ax,0x4f02
	asm mov bx,0x101
	asm int 0x10
// --------------------------------------------------
// ---- abilità il cursore --------------------------
 
regs.x.ax
 = 0x01 ;
  int86 ( 0x33, &regs, &regs ) ;
// --------------------------------------------------
// ---- ciclo per movimento -------------------------
	while(!kbhit())
   {
   // ---- memorizza le coord del maouse in X e Y ---
 
regs.x.ax
 = 0x03 ;
	  int86 ( 0x33, &regs, &regs ) ;
	  x = 
regs.x.cx
;
	  y = regs.x.dx;
	// -----------------------------------------------
   // ---- disegna un punto sullo schermo -----------
		asm mov ax,640
		asm mov bx,[y]
		asm mul bx
		asm add ax,[x]
		asm jnc eheh
		asm inc dx
		eheh:
			asm mov ofs,ax
			asm cmp dx,[bank]
			asm jz ahah
			asm mov [bank],dx
      asm mov ax,0x4f05
		asm xor bx,bx
		asm mov dx,[bank]
		asm mov cx,[bankshift]
		asm shl dx,cl
		asm int 0x10
		ahah:
			asm push di
			asm mov ax,0x0a000
			asm mov es,ax
			asm mov di,[ofs]
			asm mov al,15
			asm mov [es:di],al
			asm pop di
	// -----------------------------------------------
   }
// --------------------------------------------------
// ---- disabilità il cursore -----------------------
 
regs.x.ax
 = 0x02 ;
  int86 ( 0x33, &regs, &regs ) ;
// --------------------------------------------------
// ---- torna al dos---------------------------------
	asm mov ax, 0x03
	asm int 0x10
// --------------------------------------------------
}

Allora....:
1 - Non dimenticare che in modalità SVGA, lo schermo viene diviso in più
parti o banchi, quindi nel caso 640 x 480, devi dividere le coordinate x:y
per 4 poichè 4 sono i banchi.
2 - Devi trasporre le coordinate ottenute, identificando in quale banco vuoi
scrivere, altrimenti otterrai solo la scrittura all'interno di un solo
blocco.( in genere quello in alto a sinistra).
3 - Cerca di usare le istruzioni in C, questo per una semplificazione del
codice stesso. In assemply ci vogliono decine e decine di righe, mentre in
C, nella maggior parte dei casi, meno della metà.
4 - Quello che ti ho appena detto non vale sempre, ma devi tener conto del
sistema operativo e del compilatore che usi. Ti consiglio di acquistare un
libro sulla programmazione in SVGA ( io ho " Programmazione Grafica 3d ", mi
sembra buono).
5 - Quando si parla di programmazione grafica, non si parla di C standard
che è l'unico argomento trattato in questo NG, quindo prova a porre queste
domande in it.comp.giochi.sviluppo.
Per maggiori informazioni scrivimi in e-mail.
Ciao by Siro


Newsgroup: it.comp.lang.c
Titolo: binding Qt Objective C

Salve a tutti.
Ho pensato che, essendo ObjC un superset del C, fosse utile chiedere qui 
invece che altrove.
La domanda vera e' questa: esiste un binding ObjC delle Qt? Se si', dove 
trovo informazioni? Se cerco con Google trovo si' le parole "ObjC" e 
"Qt" ma in mezzo ci sono almeno un migliaio di altre parole, cosi' tante 
da rendere incorrelate le due che mi interessano...
Mi sto installando Kdevelop perche' mi dicono che supporti ObjC, pero' 
continuo a non avere idea di come usare le Qt con siffatto linguaggio.
Grazie a tutti.
-- 
Morpheu5

> Se si', dove trovo informazioni?
infornazioni sulle Qt le puoi trovare qui:
http://www.qtforum.org
oppure qui:
http://www.trolltech.com/
spero di esserti stato d'aiuto

 spero di esserti stato d'aiuto
Il sito della Trolltech e' in se' un po' inutile ma faro' un salto sul 
forum, grazie mille per la dritta.
-- 
Morpheu5

Newsgroup: it.comp.lang.c
Titolo: sedgewick e quicksort

mi sembra che da alcuni test che la funzione a pag 118 del libro
algoritmi in C abbia problemi di sfondamento con particolari vettori
void quicksort(int a[], int l, int r)
{int v, i, j, t;
 if(l<r)
  {v=a[r]; i=l-1; j=r;
   for(;;)
    {while(a[++i]>v);
     while(a[--j]<v);
     if(i>=j) break;
     t=a[i]; a[i]=a[j]; a[j]=t;
    }
   t=a[i]; a[i]=a[r]; a[r]=t;
   quicksort(a, l, i-1);
   quicksort(a, i+1, r);
  }
}
vi risulta?



Passando un array in cui l'ultimo elemento del
range a[r] sia il maggiore e con l=0, il loop
    while(a[--j]<v);
sconfina abbastanza ovviamente in negativo.
Andrea
Newsgroup: it.comp.lang.c
Titolo: Visibilità delle variabili

Salve a tutti...premetto che sono un novellino nella programmazione in
C e spero che mi perdoniate nel caso in cui farò delle domande che a
voi vi sembreranno banali...
Vi spiego il problema in cui mi stò imbattendo.
Allora...l'ambiente di sviluppo è Visual C++
ho due file cpp in cui sono definite delle funzioni ed ho una varibile
che deve essere vista in entrambi i file.
Io mi sono definito la variabile in un global.h,ma quando faccio
l'include del mio global.h in entrambi i cpp il compilatore mi avverte
che c'è stata una dichiarazione doppia (error LNK2005:) ma se tolgo
l'include ad uno dei due cpp il compliatore mi dice che la variabile
non è stata dichiarata (error C2065: 'pippo' : undeclared identifier)
Sapete dirmi come risolvere questo problema?
Ringrazio anticipatamente tutti coloro che mi risponderanno...
Ciao


Una possibile soluzione è quella di  inserire nel tuo global.h il 
seguente codice:
#ifndef GLOBAL_H
#define GLOBAL_H
qui va il contenuto del global.h
#endif
Se "posti" il codice si può essere sicuramente più precisi!!!

 Ringrazio anticipatamente tutti coloro che mi risponderanno...
devi dichiarare la variabile come extern nei moduli che la 
utilizzano e devi definire la variabile in un .c, non in un 
.h. esempio:
modulo1.c:
int x = 0;
modulo2.c:
#include <stdio.h>
#include <stdlib.h>
extern int x;
void f2(int *y) {
    *y *= 2;
}
modulo3.c:
#include <stdio.h>
#include <stdlib.h>
extern int x;
void f1(int *y) {
    (*y)++;
}
int main(int argc, char **argv) {
    printf("%d\n",x);
    f1(&x);
    printf("%d\n",x);
    f2(&x);
    printf("%d\n",x);
    return 0;
}
ciao.

Si funziona grazie!!!

Si funziona grazie!!!

 ha scritto nel messaggio
news:4402e9d3$0$28066$4faf...@reader1.news.tin.it...

io uso le macro per far fare questo al compilatore.
Ho un file GenGlobal.h che è comune a tutti i miei progetti
che contiene
#ifdef GLOBAL_VARS
  #define EXT
  #define EQ  =
#else
  #define EXT extern
  #define EQ  ;##/##/
#endif
poi dichiaro le mie variabili/costanti in Global.h
EXT const ULONG _cul24hrs EQ 864000;
e #define GLOBAL_VARS nella main prima degli #include
in questo modo non mi devo preoccupare di dichiarare come extern le mie
globali
ciao

Newsgroup: it.comp.lang.c
Titolo: Porte USB

Salve a tutti, avrei bisogno di sapere quali sono le API per aprire,
chiudere, scrivere e leggere tramite porte USB.
Grazie in anticipo.
Roberto

 ha scritto nel messaggio
news:arkou3$j7h$1...@newsreader.mailgate.org...


 avrei postato anche li ;-))))
Male, molto male.
Avrai una risposta attendibile solo da chi la sa, e chiedendo anche a chi 
non la sa non aumenta la probabilità di averne una. 
Probabilmente i newsgroup in generale non sono il luogo adatto per reperire 
un certo tipo di informazioni (vale sempre il buon vecchio rtfm?). Se sei 
in città, hai bisogno di sapere dov'è una strada, hai già chiesto più volte 
alle persone del posto senza avere risposta, ha più senso comprare una 
cartina o chiedere ad un gruppo di turisti stranieri che sta appena 
scendendo dal pullman?
Newsgroup: it.comp.lang.c
Titolo: aiuto sui puntatori

DOMANDA: ho un array di int
int eeprom[64];
che per intervenute esigenze di programma devo andare a gestiore anche come
singoli byte.
ho definito un puntatore a char
char *pointer;
Posso inizializzare
*pointer = eeprom[0];
e poi fare tutte le operazione su eeprom usando pointer e quindi usando
eeprom come un array di char?
grazie e ciao

 ha scritto nel messaggio
news:vRDX6.2444$i51....@news2.tin.it...


 ha scritto nel messaggio
news:jfEX6.2504$i51....@news2.tin.it...


 ha scritto nel messaggio
news:9gn6k0$3ah$1...@nreadB.inwind.it...


Newsgroup: it.comp.lang.c
Titolo: sulle liste pseudo ordinate

Salve a tutti, spero che qualcuno di voi possa darmi una mano perchč ho un
problemino che mi sta facendo diventare completamente pazzo.
Ho una lista Lifo (non ordinata), supponiamo con i numeri:
20-18-30-5-21
Devo inserire un numero x nella lista in modo tale che venga inserito subito
dopo il primo elemento che si trova nella lista inferiore o uguale a quello
da inserire.
Ad esempio se dovessi inserire il numero 50, dovrei inserirlo dopo il 20,
dato che il 20 č primo numero inferiore a 50 che compare nella lista
Dato il numero 22 dovrei lo stesso inserirlo in quel posto.
Dato il numero 15, dovrei inserirlo dopo il 5, essendo tutti gli altri
numeri piů grandi del numero 15, ed essendo il 5 il primo numero inferiore
al numero 15.
dato il numero 4, dovrei inserirlo a fine lista, dato che tutti i numeri
precedenti sono piů grandi.
A parte discussioni su una lista inutilmente pseudo-ordinata come questa, vi
chiedo aiuto perchč ho provato a scrivere 3000 algoritmi ma non me ne funge
nemmeno 1.
Saluti :)

nemmeno 1.
mostrane uno e qualcuno ti dira' cosa sbagli.
Andrea

 Andrea
Grazie mille a tutti ma ho appena risolto :))))))
Bye :)))))
Newsgroup: it.comp.lang.c
Titolo: inserimento in lista ordinata

buongiorno
ho una lista di eventi (devo realizzare un'agenda):
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
/** Nodo della lista che raccoglie gli eventi di una agenda */
typedef struct elem_t {
    /** puntatore all'evento */
    evento_t* ptev;
    /** puntatore all'elemento successivo */
    struct elem_t* next;
}
elem_t;
/** Rappresentazione di un evento */
typedef struct {
    /** data formato gg-mm-aaaa */
    char data[LDATA + 1];
    /** utente che ha registrato l'evento */
    char utente[LUTENTE + 1];
    /** descrizione evento */
    char descrizione[LDESCRIZIONE + 1];
}
evento_t;
NB: l'evento ha il formato:
gg/mm/aaaa user#descrizione_evento
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
dovrei realizzare una funzione che aggiunga un elemento in una lista
ordinata. la funzione ha la seguente segnatura:
int add(elem_t** agenda, evento_t* ev);
Non riesco a trovare un algoritmo per inserire nel posto giusto
l'elemento!!
ho provato a fare come segue:
- estraggo la data dall'evento ev e la confronto con quella di tutti
gli elementi della lista fino a che non ne trovo uno che sia maggiore
o uguale. se è maggiore, inserisco subito prima di tale elemento,
altrimenti continuo;
- estraggo il nome utente da ev e lo confronto con quello degli
elementi della lista (a partire da dove mi sono fermato) fino a che la
data non è maggiore e il nome utente non è maggiore. appena posso,
inserisco, altrimenti continuo;
- estraggo la descrizione e faccio uguale.
può funzionare?? qualcuno può darmi una mano con tutti questi cicli??
mi incasino nelle condizioni!!!! :(
grazie mille

 qualcuno puň darmi una mano con tutti questi cicli??
Certo.
E.
Newsgroup: it.comp.lang.c
Titolo: favorino...

Ciao a tutti...
devo inserire nel mio programma una funzione che mi genera numeri interi
random compresi tra 20 e 30.....
chi mi aiuta....please.
Grazie
simona

 > simona
...dovrei anche stampare una  matrice.....


... e fallo!!!... io di sicuro non te lo impedisco....
cosa c'è ti manca l'inchiostro alla stampante???
:-))


       ...i geni invece, scoprono dei problemi...
Quello che devi capire...stronzetto è che
1) non ho la stampante...però ho delle cartucce di inchiostro che postresti
infilarti...........
2) faccio prima a farla a mano;
3) ti ricordi che mostro che veniva sta matrice?
4) in riferimento alla tua firma....io sono proprio un genio...e spero
vivamente che tu sia un uomo di talento.
Comunque se non vuoi aiutarmi farò da sola...(SIGH!!!), e ti informo...già
che pensi che sono impedita....che ho scritto le funzioni genera_ricavi e
genera_costi....(e ce voleva tanto!!!!!!!!!!!!!)
ciao caro muso giallo

siamo permalose.... ehhh

 siamo permalose.... ehhh
In verità con Mr China ci conosciamo da un po....
anche se mi sa che non ha gradito l'aggressività visto che non risponde....

 ha scritto nel messaggio
news:rQ5E8.58292$US3.1...@twister1.libero.it...

... non è ke non ho gradito l'aggressività... il fatto è ke non posso
perdere tempo dietro a thread inutili, ho troppo da fare a far stampare una
matrice di merda, messa all'interno di un programma di merda fatto da
qualche pseudo programmatore di merda che farebbe meglio a darsi
all'apicultura invece che scrivere codice a vanvera....


       ...i geni invece, scoprono dei problemi...
grazie caro...che vuoi per cena?

Certo che pensavo fossero scadenti i miei di post....
questo mi consola....
hai provato a fare man printf?? x stampare quella "merda" di una matrice??


Che fa man printf?


se il problema fosse semplicemente la sintassi del printf avrei risolto già
da tempo....
...in realtà il problema è ben più grave... e credo di averlo descritto con
le parole più "giuste" nel post precedente...



man <nomecomando>
č un comando linux che ti fornisce la sintassi e la utilizzo dei comandi del
sistema,
ma fornisce indicazioni utili anche per quanto riguarda i comandi c...
peccato che il nostro caro amico non sa che non tutti lavorano con linux....
:-))


Il codice scritto in uno dei post precedenti non va bene. Devi fare:
#include <stdlib.h>
..........
srand ((unsigned) time (NULL));
/* inizializza il gen. di numeri casuali  */
.........
int x = 20 + rand () % 11;
/* rand () % 11 dà numeri da 0 a 10, aggiungendo 20 ottieni
    numeri da 20 a 30   */
Occorre ricordare che:
x % y
dà valori compresi tra 0 e y - 1. Ciao
                                    Marchisio Stefano
Newsgroup: it.comp.lang.c
Titolo: Immagini jpg

Qualcuno conosce se esiste una liberia free per leggere/scrivere nel formato
jpg ...
... magari scritta in c/c++ e magari in formato sorgente.
Grazie
Alex



Io ho cercata di farla ma l'algoritmo di compressione è troppo
complesso.........
se tu sei in grado.....
 fattelo.....
Il Razziatore,
The Only Good Windows in an uninstalled Windows
-----------------------------------------------
E-MAILs : 
razzi...@usa.net
 (Primary),
 
IlRazz...@netscape.net
 (for Attachent)
WEB     : 
http://www.razziatore.dns2go.com/
ICQ     : 67552596

sorgente.
Io ho provato jpeglib e mi sono trovato molto bene ... e' una
libreria C e permette di controllare molto bene le operazioni
di compressione/decompressione. Anche la documentazione e'
abbastanza chiara ed esauriente.
Puoi scaricare la libreria da 
www.ijg.org
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff

Grazie per i suggerimenti !
Alex

Newsgroup: it.comp.lang.c
Titolo: MEMORIA HEAP ESAURITA 2

Ho un problema con la memoria HEAP, devo allocare un albero binario di
ricerca con molti nodi (anche 100000, 1000000) e ogni nodo č di 14 byte, il
problema sta nel fatto che quando supero i 10000 elementi circa la funzione
"malloc" mi restituisce NULL e quindi ho la memoria esaurita.
Ovviamente non posso fare nessuna "free".
Inoltre la procedura ricorsiva di visita dell'albero da sempre errore di
stack overflow.
Io utilizzo il TURBO C++ 3.0 (DOS) con il modello di memoria LARGE.
NON CI CAPISCO PIU' NIENTE !!!! AIUTATEMI!!!! (please)
am...@hotmail.com
lr54...@silab.dsi.unimi.it
am55...@silab.dsi.unimi.it

stack overflow.
anche qui e' un problema di memoria (a meno di bachi), hai provato ad
aumentare le dimensioni dello stack ? Non conosco il tuo compilatore
ma di solito tutti hanno delle opzioni per modificare le dimensioni
dello stack.
Gianpaolo Bottin
- Live Long and Prosper -

stack overflow.
Problema 3: Lo stack ha una dimensione limitata per cui e' normale che
facendo un pesante uso di funzioni "ricorsive" finisca per "esplodere".
Soluzione 3: Entro certi limiti puoi aumentare la dimensione dello stack
settando opportunamente la variabile _stklen. Se cio' non basta non ti
rimane che cambiare la struttura del tuo programma cercando di aggirare il
problema.
Ciao BR66
Newsgroup: it.comp.lang.c
Titolo: Stile di programmazione

Salve a tutti,
vorrei porvi alcuni quesiti che mi porto un pochino dietro da quando ho
provato a programmare in C.
Qual'è secondo voi il miglior stile di programmazione nella gestione dei
file di Header?
Secondo voi è sbagliato inserire i file di header in un unico include (tipo
globals.h) e poi includerlo in tutti i file
file .c di una applicazione?
Esiste qualche problema di prestazioni in questo caso poichè tutte le
funzioni sono visibili a tutti o ho capito male qualche cosa?
Fino ad ora non ho scritto grandi applicazioni ma più che altro singoli
algoritmi che per lo più avevano una decina di funzioni ma ora che sto
iniziando con grandi applicazioni sto trovando un po di difficoltà nel
gestire gli header.
Non so se vi ho fatto capire bene il mio dubbio, spero di si.
Un cordiale saluto a tutti.
Sardone

 funzioni sono visibili a tutti o ho capito male qualche cosa?
Ciao,
non ho mai scritto grossi applicativi in C ma credo di saperti rispondere.
Crea un'unico header in cui inserire tutti gli altri non dovrebbe causare
nessun tipo di problema al compilatore, semmai i problemi li avrà chi
dovrà manutenere il codice.
Viene difficile dover controllare tutti i file header per capire quale
deve essere modificato.
Saluti
Alfredo
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

si dovrebbe 'esporre' le cose in modo che a chi non servono certe cose, non
possa neanche vederle
e lasciare a visibilita' globale il MINIMO POSSIBILE
cosi' credo che sia giusto
ciao

 funzioni sono visibili a tutti o ho capito male qualche cosa?
C'e` un problema di prestazioni ma  in fase di compilazione visto che il
compilatore deve  leggere e fare  il parsing anche  di file che  non gli
saranno utili. Ovviamente se parliamo di  3/4 headers il problema non si
pone.
Luca
[1] Compilare l'header vuol dire compilare un file che contiene solo
l'include di quel singolo header.
-- 
Home: 
http://kronoz.cjb.net
La mia opinione puo` essere cambiata, ma non il fatto che ho ragione.

Newsgroup: it.comp.lang.c
Titolo: OT Micro compilatore

Salve a tutti, mi sapete indicare un micro compilatore C
free che possa essere usato anche da chiavetta usb ?
Grazie a tutti
Ciao

... nessuno sa dirmi qualche cosa?
Ciao

 Giovanni
... , va bene , grazie.
Ciao

 
Ciao, prova qui:
http://www.thefreecountry.com/compilers/cpp.shtml

... ti ringrazio .
Ciao
Newsgroup: it.comp.lang.c
Titolo: ... non mi ricordo... passaggio di funzioni!!!

... non ricordo piu come si passava come parametro ad una funzione un' altra
funzione... mi sapete aiutare?
Es.:
 int pippo(int a, int b, ---- funzione(parametri) ---)
{
.
.
   ---funzione---
.
.
}



 funzione... mi sapete aiutare?
Non ho ben capito se tu intendi un caso simile a questo:
int funzione(void) {
    return 10;
}
int funzione2(int a) {
    /* codice */
}
// altro codice a seguire
funzione2(funzione());
oppure quest'altro:
int funzione(void) {
    return 10;
}
int funzione2( int (*puntatore) (void) {
    /* codice */
}
funzione2(funzione);
Ciao.

la seconda che hai detto... ;-) !!!
Ti rignrazio e buon Primo Maggio!

int funzione2( int (*puntatore) (void) {
Questa.


Non mi sembra di aver fatto mistero riguardo alla mia non comprensione della
domanda del Sig. Manu.
Come si è esposto in seguito il problema era riferito al passaggio di una
funzione tramite puntatore, ma all'inizio pensavo che si riferisse alla
possibilità di passare il valore di ritorno di una funzione ad un'altra
procedura in una sola istruzione di chiamata, quindi ecco spiegato la
motivazione per:
funzione2( funzione() );
Ciao.

Newsgroup: it.comp.lang.c
Titolo: Programmino per leggere file su directory

Salve a tutti,
Volevo porvi una domanda.
Come posso realizzare un piccolo programmino in C per leggere sotto DOS 
i nomi dei file contenuti in una certa directory??
Ho provato ad utilizzare le funzioni contenute in dir.h ma non sono 
venuto a capo di nulla. (sicuramente per una mia incompetenza)
Quindi vi chiedo aiuto.
Non vi chiedo di farmi tutto il programma, ma anche solamente di 
indicarmi la funzione da utilizzare e come utilizzarla.
Grazie sin d'ora.
 Luca Stacchio
 Centro Elaborazione Dati
 A.S.S.A.M.
 Treia (MC)
 0733-217067/217010
______________________________________________________
Get Your Private, Free Email at 
http://www.hotmail.com
--
Posted from [192.106.72.201] by way of 
f13.hotmail.com
 [207.82.250.24]
via Mailgate.ORG Server - 
http://www.mailgate.org

Semplice :---- )

 Luca Stacchio
Devi usare dos_findfirst() e dos_findnext().
Se usi djgpp info contiene anche un esempio.
Ciao Luciano

Newsgroup: it.comp.lang.c
Titolo: DJGPP Su win 98

Vorrei sapere se qualcuno di voi utilizza il DJGPP sotto win98 perché a me
non funziona, cioè mi compila il listato ma quando faccio run mi da errore
di sistema e si blocca. qualcuno sa spiegarmi perché
Filosganga
E-Mail: 
Filosga...@flashnet.it





...

Credo che sia un altro arcano di Winbug98!
.Kalymero
#ICQ 25235024
email -> 
kalymeroN...@tin.it
 (cut NONROMPERE)
"Fatti non foste per viver come bruti, ma per seguirne virtute e conoscenza"

Credo che sia un altro arcano di Winbug98!
A me va che e' una scheggia (il DJGPP, non winzozz, neh?), anche sul 98
Marco


Scusa, ma se devi citare Dante nella tua firma, citalo correttamente...
(se conti bene i due versi che hai scritto non sono endecasillabi... quindi
devono essere sbagliati :o)
Newsgroup: it.comp.lang.c
Titolo: C e windows

ciao a tutti
forse la domanda č mooolto stupida... vabbč scusatemi :-(
io so programmare in C ma non per windows
siccome vorrei imparare, la mia domanda č:
    esistono solo le librerie MFC e API della microsoft o ne esistono altre
altrettanto complete ?
    quali e in quale sito le trovo ?
grazie, ciao

siccome vorrei imparare, la mia domanda č:
Risposta: it.comp.programmare.win32
-- 
Andrea Laforgia - walkietalkie(at)
libero.it

Newsgroup: it.comp.lang.c
Titolo: Find File -> Return Path

Ciao a tutti,
dovrei scrivere una funzione che dato il nome di un file, cerca su tutto
il disco se il file esiste ed in quel caso mi restituisca il Path Assoluto.
Ho guardato la _searchenv ma funziona solo con windows.
L'obiettivo è una funzione C standard compilabile sia con Linux sia con
Windows.
MI date qualche dritta?
Grazie
ferro9
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Windows.
Non esiste.

 Non esiste.
... perche' non c'e' un modo standard per navigare nell'albero delle
directory, listare tutti i file contenuti in una data directory e
controllare (in modo efficiente) se un file e' o no una directory (per
ricominciare una ricerca).
Spostati su it.comp.os.linux.development per la soluzione posix compliant e
se hai dei dubbi su Windows (anche se da quanto traspare dal tuo msg hai
trovato una soluzione) su it.comp.programmare.win32.
Un consiglio: piu' che parlare di "dischi" dovresti parlare di path.
-- 
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."

 ricominciare una ricerca).
E soprattutto perche' il concetto stesso di 'directory' e' estraneo al C.
°°° Posted from X-Privat Free NNTP server - 
www.x-privat.org
 °°°
Newsgroup: it.comp.lang.c
Titolo: Problemino chi mi aiuta?

Allora ho questa struttura
struct Vertici
{
char *NomeOggetto;
}
struct Vertici Vertex;
Se richiamo questa funzione ObjectName( shapeNo, &name ),che mi restituisce
un puntatore ad una stringa e poi la voglio assegnare alla
Struct......scrivo questo:
Vertici.NomeOggetto=name;
A questo punto la voglio scrivere su un file con fwrite ed allora scrivo:
fwrite(&Vertex,sizeof(struct Vertici),1,outputFile);
E' tutto giusto?
Lo chiedo perche' quando dopo vado a rileggere la struct con fread,mi stampa
una
stringa nulla...e non so dove sia il problema......
Grazie a chi risponde!

>E' tutto giusto?
Ad occhio e croce (ho studiato troppo Hegel per connettere, sorry) stai
scrivendo su file il ptr alla stringa e non la stringa in sé. Dovresti
scriverti una funzione che stampi tutta la stringa. Tieni comunque conto che
di solito è una cattiva idea scrivere dati binari su un file (è poco
portabile).
Lanugo


Ciao
Riz


Scusa, ho detto una scemenza. L'avevo presa per una definizione di tipo...
:P


Newsgroup: it.comp.lang.c
Titolo: cerco vecchio compilatore C per MSDOS

Mi servirebbe un compilatore C ANSI molto semplice per
MSDOS, devo provare alcuni piccoli programmi  (pochi KB)
su un sistema con un 486.
Qualcuno potrebbe darmi un link da cui scaricarlo?


wrote:

Dal sito di Borland dovresti poter scaricare il Turbo C 2.0 aggratis.
Vai nella sezione download, al max ti chiedono una registrazione
Ciao
 Max

 Vai nella sezione download, al max ti chiedono una registrazione
Grazie dell'informazione, ho fatto e non serve nemmeno la
registrazione. E grazie anche alla Borland, e' una bella cosa
mettere a disposizione gratis questi vecchi compilatori che
non hanno piu' mercato ma possono essere utili.
Newsgroup: it.comp.lang.c
Titolo: Problema caratteri

Ciao,
sto cercando di capiere come fare per poter gestire il contenuto di file la
cui lunghezza mi è sconoscita. Ovvero la lunghezza del file è variabile a
seconda del momento della giornata, in quanto un gestore di notizie carica
su un server dei file contenenti delle notizie quindi il file può avere una
dimensione variabile.
Ora stavo cercado di capirmi con la trattazione delle stringhe in C  e
leggendo i libri che ho acquistato ho capito con una variabile Stringa in C
non è definibile, ma che per la trattazione dei caratteri si utilizzano
degli array, i quali devono cmq avere una lunghezza definita e non possono
essere dinamici. Partendo da questo presupposto qualcuno potrebbe suggerirmi
un modo per poter gestire la situazione?!?! Basta anche un indirizzo in cui
possa trovare delle informazioni a riguardo.
Grazie per l'attenzione
Carlo

possa trovare delle informazioni a riguardo.
man 3 malloc
man 3 calloc
man 3 free
ciao
 sbi

dimensione variabile.
Gli approcci possibili sono vari.
In generale puo' essere conveniente legere BUFSIZ elementi da file con
una fread, ed effettuare tutte le procedure di parsing li sopra.
Questo puo' funzionare o no, a seconda di quali sono le regole di
parsing che devi adottare.
A seconda di quali sono le regole di parsing da seguire ci sono vari
approcci.
In alcuni casi e' comoda una fgets(), in altri e' meglio semplicemente
mettere tutto nel buffer (come suggerito sopra) e lavorare poi
direttamente sul buffer.
Tutto dipende alla fin fine dal formato delle /notizie/ contenute nel
file. Con questa informazione si potrebbe anche azzardare un metodo
per parsificare il tutto.
-- 
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."

 ha scritto nel messaggio
news:p2t8iuoltvuudm836...@4ax.com...


 che io possa elaborare quanto inserito dall'utente!?!? Es se volessi
Esistono soluzioni di più svariato tipo, con vantaggi e svantaggi. Tutto
sta nel capire le esigenze del caso.
Una soluzione molto comune e allo stesso tempo semplice è:
ipotizzare la dimensione massima della stringa e quindi sovradimensionare
l'array in modo da poter contenere tutte le stringhe di lunghezza
inferiore a quella ipotizzata.
Per salvare spazio si puo' in una seconda fase allocare dinamicamente un
array di dimensione pari a strlen(stringa_sovradimensionata) (strlen
calcola la lunghezza effettiva di una stringa, non tutta la cardinalità
dell'array) (oppure direttamente una strdup).
johnpp
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it
Newsgroup: it.comp.lang.c
Titolo: funzioni standard

Dove potrei trovare una documentazione completa su tutte le funzioni del C
standard oppure una copia del documento ANSI/ISO 9899:1990 ?
Nel frattempo
che mi documento qualcuno potrebbe dirmi se c'è una funzione
standard per
avviare un nuovo processo e come funziona ? (per esempio Fork ma non so se
è standard)
Vi ringrazio a tutti anticipatamente per la vostra
disponibilità.
--------------------------------
Inviato via 
http://usenet.iol.it

č standard)
Standard, ma standard POSIX. Il NG giusto potrebbe essere
it.comp.os.linux.development. E comunque per la fork ti basta la man
page :)
Per sapere cosa e' standard C e cosa POSIX puoi guardare qui (non
spiega nulla, si limita ad elencarteli):
- 
http://www.schweikhardt.net/identifiers.html
Per lo standard, quarda su: 
http://www.lysator.liu.se/c/
 per il C89 e
http://anubis.dkuug.dk/JTC1/SC22/WG14
 per il C99 (cerca n937.pdf per
avere uno degli ultimi draft).
Per la documentazione sulla libreria standard hai il K&R per la
maggior parte di essa, inoltre puoi guardare in questi posti:
- 
http://www.infosys.utas.edu.au/info/documentation/C/CStdLib.html
- 
http://www.dinkumware.com/htm_cl/index.html
 (C99)
-- 
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."

 Standard, ma standard POSIX. 
A questo proposito segnalo questo link:
http://www.unix-systems.org/version3/online.html
che  previa registrazione  permette di  leggere l'ultima  versione dello
standard POSIX (IEEE  Std 1003.1-2001) online e di  scaricarne una copia
in html.
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
"Woe to you, Oh Earth and Sea,
 for the Devil sends out the beast with wrath,
 because he knows the time is short...
 Let him who had understanding reckon the number of the beast
 for it is a human number, its number is Six hundred and sixty six."
Revelations ch XIII, b. 18
Newsgroup: it.comp.lang.c
Titolo: Alberi binari

Ciao NG,
mi chiedevo se č possibile visualizzare gli alberi binari come nei disegni
che si trovano sui libri, nei quali vi č il primo valore dentro un
cerchietto e da esso si distaccano i rami schematizzati da linee, le quali
collegano due cerchietti contenenti i valori.
Nel mio programma ho utilizzato questo codice:
void anticipato(struct nodo *p)
{
if(p!=NULL) {
  printf("%f  ",p->valore);
  anticipato(p->alb_sx);
  anticipato(p->alb_dx);
  }
}
il quale visualizza: 104 32 23 44 121 200 152.
Vorrei visualizzare almeno una cosa cosě (sarebbe meglio con linee e
cerchi!!!):
                           104
             32                       121
   23               44                          200
                                        152
con nel ramo SX i valori minori dell'etichetta e DX i maggiori.
Si puň fare???
Se si, mi potreste dire il codice???
Grazie e ciao.
Stefano.

Si può fare???
Bhe ti dovresti ingegnare un po' con la funzione gotoxy(coord x,coord
y); reperibile nella libreria <conio.h> giocando sugli indici si
possono fare miracoli..anche se e' una palla assurda .-))))
Augusto Pucci
Webmaster di Prospektiva On-line
http://go.to/Prospektiva
Newsgroup: it.comp.lang.c
Titolo: suffisso f

Questo è un altro errore - che non capisco il perché -, che mi viene
segnalato:
float a = 10f;
secondo il compilatore sto assegnando un esadecimale ad un float.
Risolvo tranquillamente la situazione mettendo un .0  ma vorrei capire se
restrizioni troppo alte o compilatore poco standard (sempre il turbo C).

Questo č un altro errore - che non capisco il perché -, che mi viene

Dubito fortemente che il compilatore creda che 10f sia una costante
esadecimale. In "C" quelle costanti devono iniziare con 0x oppure 0X.
Inoltre non ci sarebbe nessun errore in
  float a=0x101;
Riguardo al fatto che sia necessario indicare il punto decimale
(eventualmente senza lo 0) per identificare una costante float e'
parte della sintassi dei literal in "C" e non ci puoi fare nulla.
HTH
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff

 restrizioni troppo alte o compilatore poco standard (sempre il turbo C).
Ai tempi del Turbo C
float a=10.0 	oppure		float a = (float) 10
HTH


Non so allora, ma adesso molti compilatori trattano 10.0 come double e ti
premiano con un warning in fase di compilazione, poichè la conversione da
double a float potrebbe comportare una perdita di precisione.
Meglio essere espliciti sul tipo.
float a = 10.0F;


 double a float potrebbe comportare una perdita di precisione.
Né il BCC55 né il DJGPP danno alcun warning.
EMG

Né il BCC55 né il DJGPP danno alcun warning.
Temo che la questione sia dipendente dall'implementazione (guarda
caso) e, in particolare, dal tipo di formato interno di
rappresentazione dei floating point. Sia C++ Builder 5 (e quindi
BCC55) che DJGPP utilizzano lo standard IEEE 754 per la
rappresentazione dei floating, il quale supporta anche i valori -INF e
+INF. Non riportano alcun warning, perche' credo che se la costante
floating point assegnata a un tipo "float" e' in overflow/underflow
rispetto ai limiti, viene automaticamente convertita in +INF/-INF, che
e' un valore valido per i "float". Questo comportamento, pero',
potrebbe essere diverso, a seconda dei compilatori (alcuni,
effettivamente, potrebbero riportare un warning).
--
Andrea Laforgia (ICQ 87230455)
Programmatori si nasce, non si diventa.

Newsgroup: it.comp.lang.c
Titolo: come STAMPo?

 comandi che ho visto nei libri che sto usando non mi danno nessun aiuto.
Prova ad aprire in scrittura il file PRN e a scriverci sopra.
EMG

 system("type miofile.txt >prn" ) ;
non funziona con alcune HP Deskjet... :-(

 ha scritto:

forse perche' sono stampanti per win e non per dos.
--
 Ciao, Luca.
 Reply to 
luca....@tiscalinet.it

 wrote in message
3928F270...@flashnet.it...


 Cosa vuoi dire, puoi farmi un esempio??
FILE *printer = fopen( "PRN", "w" );
fprintf( printer, "Prova di stampa" );
fclose( printer );
EMG

Io quindi me la prenderei nel c**o


>non funziona con alcune HP Deskjet... :-(
forse perche' quelle HP DeskJet sono specifiche per windows, per cui riesci 
a stampare solo attraverso le API di Windows.
francesco

 > > non funziona con alcune HP Deskjet... :-(


 >non funziona con alcune HP Deskjet... :-(

Newsgroup: it.comp.lang.c
Titolo: Funzione x pulire lo schermo

Ciao a tutti volevo sapere se esiste una funzione per pulire lo schermo tipo
il comendo "clear" in UNIX
grazie!

maurizio wrote:

Ciao .
 Se hai studiato le funzioni di ncurses utilizzando curses.h   
c`e la funzione clear ;   con argomento void , ritorna int .
(fai man 3 clear ) 
Altrimenti ti puoi fare semplicemente un system("clear") ;
Tutto questo sempre nell`ambito UNIX . altrove non so.
Ti ricordo che se mai dovessi usare le curses.h  per compilare dovresti fare
gcc sorgente.c  -lncurses 
Ciao.

puoi anche usare
clrscr();
aggiungendo la conio.h
ATTENZIONE: non è standard

 wrote in message

guarda, fai una cosa:
cerca nei gruppi di google, un post di kronos su questo argomento
era un 3ad in cui mi rispose alla stessa domanda!
comunque kronos mi aveva passato circa 5 linee di codice che si adattavano a
ogni evenienza, ossia
andava bene sia per win che per linux
ciao

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

C'e qualcuno che sa dirmi come fare per copilare una funzione come:
leggimatricedafile(matrice interi, int * righe, int *colonne) che deve
leggere
da tastiera il nome del file, leggere da file il numero di righe e di
colonne della matrice che sono i primi due elementi della matrice cioč:
input
3   numero di righe
4   numero di colonne
5 3 4 1
6 2 7 6
7 1 3 3
ed infine leggere da file gli elementi della matrice. Grazie.


The majority of the stupid is invincible and guaranteed for all time.
The terror of their tyranny, however, is alleviated by their lack of
consistency.
                -- Albert Einstein

Se ti può essere utile, non è bellissimo ma funzia!
 # include <stdio.h>
# include <string.h>
# include <conio.h>
int main (void)
{
FILE *fp;
int i,j,ii,jj;
char matr[10][10];
fp=fopen("matrix.txt","r");
fscanf(fp,"%d numero di righe",&ii);
fscanf(fp,"%d numero di colonne",&jj);
for (i=0;i<ii;i++){
  for (j=0;j<jj;j++){
    fscanf(fp,"%*c %c",&matr[i][j]);}}
for (i=0;i<ii;i++){
  for (j=0;j<jj;j++){
    fprintf(stdout,"%c",matr[i][j]);}
    fprintf(stdout,"\n");}
getch();
fclose (fp);
return(0);
}
Ciiips
Enrico S.
--
Webmaster della Pagina NON Ufficiale del SonyCRX100
SonyCRX120,  SonyCRX140E/S, SonyCRX100EX, HP8100
HP8200, HP9100 & HP9200
http://www.freeweb.org/computer/SonyCRX100/

 - rimuovi XXX  x  rispondere  ICQ	#8814554
 
I  carabinieri	fermano  due  contadini   che	tornano   dal	macello:
"Che  trasportate?".	"Un   mezzo   maiale".	  "Vivo   o   morto?".
		-- Da it.hobby.umorismo
Newsgroup: it.comp.lang.c
Titolo: RPC e char[ ][ ]

nel file .x di un programmino con rpc , ho bisogno di definire una
matrice di caratteri e ho fatto nel seguente modo:
struct s{
   char a[8][9];
};
quando compilo il file .x con rpcgen ottengo il seguente errore:
   char a[8][9];
^^^^^^^^^^^^^
sale.x, line 2: expected ';'
pensavo avessi sbagliato a definire la matrice di char , ma poi ho
provato in un main di test a definirla cosě e farci qualche operazione
e funzionava tutto bene.
help pls:)
Nuaz

 sale.x, line 2: expected ';'
In C sarebbe corretto.
-- 
Mat/tia Belletti - Undergraduate student @ 
cs.unibo.it
ICQ: 33292311    - email: 
mbel...@cs.unibo.it
IRC: RedGlow     - site(s): 
http://mbellett.web.cs.unibo.it/
Jabber: RedGlow  - Linux registered user 299762 @ machine 213003

Newsgroup: it.comp.lang.c
Titolo: popen() e standard error. Problemi.

Salve, avrei la necessità di aiuto... vi espongo il problema.
Con un
progz C devo richiamare un progz PERL, quest'ultimo usa delle librerie DBD
(per connessioni a database), se un SQL dà errore il programma PERL scrive
sullo standar error ma esce con un return code pari ad esecuzione andata a
buon fine.
Il progz C richiama quest'ultimo con popen() del tipo
if
((fp = popen("
path_perl.pl
", "r")) == 0) {
   printf("Esecuzione non
riuscita\n");
   exit;
}
... lettura fp con tutte le considerazioni
dovute ....
ret_code = pclose(fp);
if (ret_code) {
   printf("Uscita
con errore\n");
   exit;
}
ret_code è 0 percui uscita senza errori
ma in realtà vedo messaggi sullo standard error.
ho provato anche con:
if ((fp = popen("
path_perl.pl
 2>/dev/null", "r")) == 0) {
il ret_code è
sempre 0
Il mio quesito è: come faccio a leggere lo standard error del
progz PERL?
Grazie a chi vorrà aiutarmi.
   Andrea Boscolo.
--------------------------------
Inviato via 
http://usenet.iol.it

 Inviato via 
http://usenet.iol.it
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

  Ciao alla prossima
Sviluppo su AIX.


 Inviato via 
http://usenet.iol.it


Newsgroup: it.comp.lang.c
Titolo: problemino con array

Ciao a tutti,
ho il seguente problemino per un esame di programmazione:
Dati due array ordinati di float (sia positivi che negativi) diciamo
A[n] e B[n] della stessa dimensione, devo creare un programmino che
dica in n passi (notazione O(n) ) se esistono 2 indici i e j tali che
A[i] + B[j] = 0.
La soluzione banale di prendere il primo elemento di un array, sommarlo
a tutti gli elementi dell'altro, passare al secondo, sommarlo e cosi via
richiede n*n passi quindi non va bene.
Vi ringrazio aniticipatamente

 wrote in message
news:2cfbb27f.0205...@posting.google.com...

se sono ordinati:
su un array fai un loop per tutti elementi .
Poi hai un indice j che metti al'ultimo elemento (n) e lo avanzi in base al
valore di
a[i]<-b[j] (e verifiche a[i]==b[j])... Ti basta un pass solo (quindi O(n)).
a[1].............a[n]
|
+--+
   |
b[n].............a[1]
a[1].............a[n]
|
+------+
       |
b[n].............a[1]
N.B: per ogni passo di i
il j poi avanzare di 0 o piu' passi.
il nucleo sta nel:
j=n-1;
for(i=0; i < n; i++) {
    while (verifica(a[i],a[j]) {
        j--; // se (j<0) --> fine
    }
}
Newsgroup: it.comp.lang.c
Titolo: Email Syntax Checking

Salve NG,
sonno alle prese con un progettino per un esame. Si tratta di un server
SMTP. Ad un certo punto dovrò fare i conti con la verifica della correttezza
formale degli indirizzi immessi. Vengo al sodo:
Qual'è il metodo migliore per creare una funzione che accetti in ingresso
una stringa contenente l'indirizzo e restituisca 0 o 1 a seconda del
risultato della verifica?
I miei risultati in rete hanno portato alla luce una miriade di funzioni di
questo tipo in altri linguaggi. La maggior parte di esse fanno uso di
espressioni regolari. E' conveniente questo approccio in C?Qualsiasi altra
soluzione sarà accettata.
P.S. :
Programmo sotto linux (Slackware 10) per console.Compilo con GCC.
Grazie in anticipo.

 
prova a guardare lex & yacc, o gli equivalenti flex & bison del mondo 'GNU'
sono usati per la realizzazione degli scanner sintattici dei linguaggi 
di programmazione ma posssono essere utilmente usati per la 
realizzazione di questo tipo di 'oggetti'.


 correttezza formale degli indirizzi immessi. 
Scaricati i sorgenti di Postifix e guardati src/global/tok822_parse.*.
Max

Newsgroup: it.comp.lang.c
Titolo: Agli inizi...

Ciao a tutti! Ho iniziato da pochissimo (da ieri) con la programmazione e ho
iniziato con il C, sul libro "C Corso di programmazione" di Deitel & Deitel,
solo che sono già incorso in alcuni problemi:
#include <stdio.h>
int main()
{
   int voto;
   print ("Dimm'er voto: ");
   scanf ("%s", &voto);
   print ("%s\n", voto >= 60 ? "Promosso" : "Bocciato");
   return 0;
}
Non funziona, come mai? Esce scritto sempre Promosso, anche se il tizio a
preso 1!
Stessa cosa con la stringa:
   voto >= 60 ? printf ("Promosso\n") : ("Bocciato\n");
 
E infine:
#include <stdio.h>
int main()
{
   int voto;
   printf ("Dimm'er voto: ");
   scanf ("%s", &voto);
   if ( voto >= 9 )
      printf ("A\n");
   else if ( voto == 8 )
      printf ("B\n");
   else if ( voto == 7 )
      printf ("C\n");
   else if ( voto == 6 )
      printf ("D\n");
   else
      printf ("E\n");
   return 0;
}
Questo mi da sempre la A. Dove sbaglio?
--------------------------------
Inviato via 
http://usenet.libero.it

preso 1!
 [snip]
1) hai scritto print invece di printf
2) %s è la specifica di conversione per una stringa, non per un
intero, che invece è %d.
3) visto che stai usando il Deitel, fossi in te mi studierei meglio il
capitolo 9.
<CODE>
#include <stdio.h>
int main()
{
   int voto;
   printf("Inserisci il voto: ");
   scanf("%d", &voto);
   printf("%s\n", voto >= 60 ? "Promosso" : "Bocciato");
}
</CODE>
-- 
Ciao, Giuseppe

 capitolo 9.
Sono ancora al 3... :)
Grazie mille, ora funonzia! Ciao!

Newsgroup: it.comp.lang.c
Titolo: Casting di una struttura?

Come da oggetto vorrei sapere se è possibile effettuare il casting di 
una struttura in una variabile int. La situazione è questa:
definisco una struttura
struct encoder
{
	int bit01;
	int bit02;
}
struct encoder encoder01;
encoder01 = {RB1, RB2};		//La struttura viene riempita con due cifre 
binarie, il valore è letto su due porte di un microprocessore
a questo punto avrei bisogno di converite la struttura, composta da due 
int in un unica variabile int contenente il valore binario derivante 
dall'"unione" delle due cifre.
Esempio:
bit01 = 1
bit02 = 0
io avrei bisogno di ottenere
che
int variabile  contenga il valore 10
Scusatemi se mi sono spiegato in un modo un po'rozzo, ma del C conosco 
solo le basi, e questo va oltre le mie conoscenze.
Ringrazio chiunque vorrà dedicare un minuto del suo tempo per aiutare un 
programmatore in erba.
FuXpiO

 int variabile  contenga il valore 10
secondo me fai prima a fare una roba del genere:
int variabile = 0;
variabile |= encoder.bit01 << 1;
variabile |= encoder.bit02;
ciao.

cane ha scritto:

Funziona!!! Grazie mille dell'aiuto :-D
FuXpiO

Newsgroup: it.comp.lang.c
Titolo: interfaccia utente

Da qualche giorno cerco info su come realizzare una CUI in C stile turbo C.
In ambiente linux riesco a trovare più informazione per DOS nulla. Mi chiedo
è così difficile realizzare un interfaccia utente carina in DOS?
La mia intenzione è quella di creare sotto DOS una finestra (se' cosi' si
puo' chiamare) con un menu' tipo quelle che si realizzavano quando ancora
non esisteva Window.
Qualcuno puo' darmi delle informazioni?
Ho provato anche con RTFM (Kernigan) ma non se' ne' parla nemmeno!
Tony
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (
http://www.grisoft.com
).
Version: 6.0.558 / Virus Database: 350 - Release Date: 02/01/2004

 Ho provato anche con RTFM (Kernigan) ma non se' ne' parla nemmeno!
Hai provato la libreria NCURSES ?
Io mi ero creato una libreria atta allo scopo ma e' passato tanto di quel
tempo ....... <sig>.
Ciao
Giuseppe

 Ho provato anche con RTFM (Kernigan) ma non se' ne' parla nemmeno!
Questo perche' il C standard non prevede questo genere di librerie :).
A parte questo, le ncurses che ti sono gia' state suggerite sono la 
scelta piu' adatta, direi.
-- 
/**
  * Mattia Belletti - Undergraduate student @ 
cs.unibo.it
  * ICQ: 33292311   - email: 
mbel...@cs.unibo.it
  * IRC: BluShine   - site(s): 
http://cs.unibo.it/~mbellett
  * Linux registered user 299762 @ Linux registered machine 213003
  */
Newsgroup: it.comp.lang.c
Titolo: Libro?

Salve a tutti, fino ad ora ho programmato in TP in Delphi un po' in ASM
e pochissimo in QBasic, ma ora all'Università c'è il C e forse il C++.
Ora mi chiedevo dove posso scaricarlo/i e dove trovare qualche guida
tanto per capire la sintassi.
Il Docente universitario ci ha consigliato come testo un libro di Mc
Graw Hill, ma io sinceramente non mi trovo molto bene con questi tipi di
testi, perchè è vero che contengono tutto e sono molto approfonditi, ma
si capiscono solo se si sanno!
Sapreste consigliarmi un testo che anche se non contenga tutto, ma che
sia di facile comprensione!
Grazie
MaTTeO.

 si capiscono solo se si sanno!
Se il testo che ti ha consigliato è "C:La guida completa" di Shildth, non lo
comprare assolutamente, è pieno di cazzate....
Prova "C: Didattica e programmazione", Al Kelley e Ira Pohl, Addison-Wesley
--
Marco Iannaccone     
marc...@tin.it
ICQ: 18748121           Tolkien
"I've... seen things you people wouldn't believe. Attack ships on fire off
the shoulder of Orion.
I watched C-beams... glitter in the dark near the Tanhauser Gate. All
those... moments will be lost... in time..., like... tears... in... rain."
FAQ it.comp.lang.c: 
http://www.programmazione.it/linguaggi/c/itcomplangc.htm
FAQ it.comp.lang.c++: 
http://www.programmazione.it/linguaggi/c/lang_faq.htm

 MaTTeO.
Non sara' mica il Prof. Santucci dell'Universita' di Roma?
Va bene, comunque. Di solito il libro di McGraw che ti dicono
di prendere non vale neanche la carta su cui è stampato
(caso raro per McGraw).
Se vuoi un libro molto dettagliato ed esplicativo, su internet
ne trovi 2 particolarmente utili.
Tricky C, che puoi cercare partendo dal sito 
www.programmazione.it
e Thinking in C (C++) di Bruce Eckel, che troverai cercando sul suo sito,
basta che usi il suo nome come indirizzo, ma ti avviso che quest'ultimo 
è in inglese ed abbastanza pesante, anche se ricco di esempi pratici.
Ciao!

> sia di facile comprensione!
io iniziai con Programmare in C di Aitken, Jones ed. Apogeo. E'
semplice e chiaro, unico difetto in ambiente universitario e' che fa
riferimento a compilatori C per ms-dos e quindi non troverai alcun
riferimento al gcc (ma per quello basta che segui la prima lezione,
quando il prof spiega come compilare)
-------------------
ara...@lohobbitelatorre.org

Newsgroup: it.comp.lang.c
Titolo: memcpy() e memmove()

Salve, potreste spiegarmi la differenza tra le due funzioni memcpy e
memmove?Svolgono la stessa funzione,ma in maniera diversa?
Grazie
Nicola

memmove?Svolgono la stessa funzione,ma in maniera diversa?
memcpy copia una porzione di memoria da un indirizzo ad un altro.
memmove fa la stessa cosa, ma funziona anche nel caso che i due
intervalli di memoria si sovrappongano.
-- 
Cordiali saluti
  Artemio