mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c
Titolo: PORNO SCIOCCANTE

http://euronet.globalredirect.com
34
234
423
241
2131
13
123
ASD
AE
SAER
SDF
DSF
DFS
DFAS
ADF
DF
AS
AD
AD

http://euro-net.da.ru
TR
ER
RF
E
4G
5E4
6W
GH
5R
6H
543
G
56HN
YT
R8
J67
J76E
JN75E6N
563
J37
JH56
7E5
FG
TREGB

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

Salve,
ho 3 domande:
1) sto leggendo codice non mi e in una funzione trovo 
  una direttiva #if 1 {codice} #else {versione alternativa stesso codice} 
  questa direttiva al preprocessore cosa vuol dire? K&R (versione 1
  purtroppo non e' chiaro) serve per lasciare parti di codice vecchie?
2) dove si trovano informazioni per valutere diverse scelte implementative? 
   faccio un esempio: e' meglio leggere un file carattere x carattere o 80
 caratteri alla volta? (la risposta a questa la so e' solo per fare un
 esepio di info che cerco) esiste un libro must o un sito con faq di
 questo tipo? 
3) una libreria e' meglio scriverla in c o c++? cioe' se scritta in c++
poi non e' utilizzabile da programmi c oppure e' possibile fare qualcosa 
per mantenere la compatibilita?
grazie mille in anticipo per la disponibilita'
 

ma tu non sei italiano vero?

 per mantenere la compatibilita?
Usare librerie C da programmi C++ e' decisamente facile. Usare librerie 
C++ da programmi C e' gia' piuttosto piu' complesso. In ogni caso, si 
puo' fare, almeno fintanto che si puo' utilizzare lo stesso compilatore. 
Questo puo' essere un criterio di valutazione - per il resto, dipende da 
un milione e mezzo di fattori, spesso molto discutibili.
-- 
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

 pratico di questa forma del costrutto, pero' sicuramente ci sara' ;)
forse la possibilita' di testare diverse versioni dello stesso codice 
modificando quel solo flag? che ne dite? 

 ma tu non sei italiano vero?
e te un bambino?


E' possibile, pero' di solito si usa un #if VAR ..., per poi usare o 
meno il tipico flag -DVAR (e' su sistemi unix, per fare un esempio) a 
tempo di compilazione, cosi' da poter effettuare queste operazioni senza 
modificare il codice.


 pratico di questa forma del costrutto, pero' sicuramente ci sara' ;)
Io di solito uso
   #if 0
   ...
   #endif
per commentare un pezzo di codice (fregandome del fatto
che abbia oppure no dei commenti al suo interno).
E di solito uso
   #if 0
   ...
   #else
   ...
   #endif
per sostuire un pezzo di codice (magari vecchio
e presumibilmente bacato) con uno nuovo riscritto da me
(e così chi legge il codice ha comunque sempre sottomano
le due diverse implementazioni: la vecchia e la nuova).
- Dario
Newsgroup: it.comp.lang.c
Titolo: Esercizi risolti del K&R

Li posso trovare online?
Non e' per nulla ma IMHO sono
molto esigenti a volte ambigui
e non sono stato in grado di
svolgerli :(
Grazie

Li posso trovare online?
Li ho trovati qui!
http://users.powernet.co.uk/eton/kandr2/

 
http://users.powernet.co.uk/eton/kandr2/
Sei un grande!

Newsgroup: it.comp.lang.c
Titolo: Problemi di compilazione file multipli.

Salve.
Ho il seguente problema potete aiutarmi?
In un file chiamato torre.h ho messo le definizioni di tutte le mie
strutture e l'intestazione di  varie procedure.
In un file chiamato torre.c ho definito le procedure che mi servono per
questa struttura.
In un file tessera.c ho definito le procedure che mi servono per questa
struttura.
In un file deposito.c ho definito le procedure relative.
In un file chiamto main.c richiamo le varie procedure nei relativi file .c
All'interno dei file .c ho incluso solo torre.h
Il problema è il seguente:
Quando compilo il tutto il compilatore dice errore di link (es. pila
definita in modulo deposito è duplicata in  modulo main.c)
Cosa devo fare?
Qui di seguito ho inserito torre.h
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define MAX 2
/* Definizione variabili globali */
struct elemento
 {
  int a,b,c,d;
  struct elemento *succ;
 };
typedef struct elemento tessera;
struct stack
 {
  int cnt;
  tessera *top;
 };
typedef struct stack torre;
int Dep[MAX][MAX][MAX][MAX];
torre pila;
/* Definizioni delle procedure */
void Azzeramento_Deposito (void);
void Crea_Deposito (void);
void Visualizza_Deposito (void);
void Inserisci_N_Tessere(void);
void Cancella_N_Tessere(void);
void Inizializza_Torre(torre *stk);
void Inserisci_nella_Torre(int x,int y,int z, int k,torre *stk);
void Visualizza_Torre (torre *stk);
void Costruzione_torre_Rand(void);

 torre pila;
nei file di header non si definiscono in genere variabili ma si
dichiarano prototipi di funzioni e tipi.
Le variabili si definiscono in un modulo .c e sidichiarano extern negli
altri moduli che le utilizzano.
es.
file:torre.c
int Dep[MAX][MAX][MAX][MAX];
torre pila;
file main.c
extern int Dep[MAX][MAX][MAX][MAX];
extern torre pila;
Ciao.
-- 
     (ZZZ)       Filippo Salotti, Bagni di Lucca, Lucca, Italy.
    //   \\  _                 E-mail : 
fil...@humnet.unipi.it
   /Y\    ZD<_o===============================================o
 .oZZZZZo.     | Studente Ingegneria Informatica Automatica  |
<OXXXXXXXO>    | Dip. Sistemi Elettrici Universita' di Pisa. |

Stai facendo il progetto di Algoritmi e Strutture Dati I !!!!
Ce lo dico a Torelli che usi questo ng!!
Scherzo :-) Ciao.
-- 
*******************************************************
  "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
*******************************************************
Newsgroup: it.comp.lang.c
Titolo: trattamento di singoli bit:strutture,unioni...domanidina

Come mi era stato già suggerito sul news, per trattare i singoli bit si
possono usare gli operatori logici & e | oppure usare una struttura e una
unione...
in questo ultimo caso ho delle domande sul seguente programmino:
definisco una struttura di 8 elementi di un bit,quindi la dimensione
dovrebbe essere un byte,
definisco una unione della struttura e di un char,
assegno un valore numerico al char,
visualizzo i singoli bit:
#include <stdio.h>
typedef struct TagBitField {
unsigned int b1:1;
unsigned int b2:1;
unsigned int b3:1;
unsigned int b4:1;
unsigned int b5:1;
unsigned int b6:1;
unsigned int b7:1;
unsigned int b8:1;
}BitField;
typedef union {
char c;
BitField b;
}Carattere;
Carattere car;
void main(void)
{
printf("sizeof bitfield: %d\n",sizeof(BitField));
printf("sizeof carattere: %d\n",sizeof(Carattere));
printf("sizeof char: %d\n",sizeof(char));
car.c=1;
printf("%d",car.b.b1);
printf("%d",car.b.b2);
printf("%d",car.b.b3);
printf("%d",car.b.b4);
printf("%d",car.b.b5);
printf("%d",car.b.b6);
printf("%d",car.b.b7);
printf("%d",car.b.b8);
}
Domande:
1) perchè sizeof(BitField) è 4 invece di 1?
2) quando assegno 1 a car.c la rappresentazione binaria è: 00000001 e mi
aspetto che l'1 sia b8... però
quando vado a stampare i singoli bit partendo da b1 mi stampa 10000000, come
mai? per caso le variabili in memoria vengono create in un ordine inverso a
quello di dichiarazione per quanto riguarda le strutture?
Grazie

 quello di dichiarazione per quanto riguarda le strutture?
Dipende dal compilatore ... il mio fa come il tuo!!! Comunque non è nello
standard pertanto ti puoi aspettare che su altri compliatori funzioni
diversamente.
Ciao
Alessio C.

 quello di dichiarazione per quanto riguarda le strutture?
credo che dipenda dalla posizione dei bit. Quando crei una union fai
condividere la stessa area di memoria alle variabili, in questo caso
il char.c e char.b sono alla stessa locazione. Non so chi decide
qual'è il bit più significativo. Generalmente ci provo e vedo come
vengono arragiate le cose.
Un saluto
laura
Newsgroup: it.comp.lang.c
Titolo: Valore di ritorno ignorato esplicitamente

Salve.
Scusate se la domanda è banale.
Nei listati di Minix e di Linux ho trovato chiamate a funzione simili alla 
seguente:
[int scan_keyboard();]
//...
(void) scan_keyboard();
Con questa sintassi si vuol indurre il compilatore a non generare valore di 
ritorno?
Ringrazio anticipatamente
-- 
Per l'e-mail rimouvere gli underscore e la frase in maiuscole.

 valore di ritorno?
Serve per rendere esplicito che il valore di ritorno verra` scartato. Il
cast viene  messo per impedire  che i compilatori piu`  vecchi producano
una sfilza di warning.
Visto  che  nessun compilatore  cosi`  vecchio  riuscirebbe a  compilare
il   kernel,   quelli  che   hai   trovato   sono  solo   dei   "reperti
archeologici". Puoi provare a postare una patch sulla lkml.
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
"New processes are created by other processes, just like new
 humans. New humans are created by other humans, of course,
 not by processes." -- Unix System Administration Handbook

Kronos
Grazie!


Newsgroup: it.comp.lang.c
Titolo: Problemi con pow()

Nel frammento di codice seguente , quando pot ha valore=2 pow mi restituisce
99 e non 100:
int expi,num,pot
.......
expi=(int)(pow(10.0,(double)pot));
num+=(int)(string[it]-48)*expi;
Nel seguente invece tutto funziona correttamente:
int expi,num,pot;
double exp;
..............
exp=pow(10.0,(double)pot);
expi=(int)exp;
num+=(int)(string[it]-48)*expi;
Qualcuno mi sa spiegare il perchč, grazie

...

Che compilatore usi?
io ho compilato il seguente programmino con GNU gcc (il porting cygwin):
---------------- CODE BEGIN (pot.c) ----------------
#include <math.h>
#include <stdio.h>
int main()
{
 int expi, pot;
 double exp;
 pot = 2;
 expi=(int)(pow(10.0,(double)pot));
 printf("1) expi = %d\n", expi);
 exp=pow(10.0,(double)pot);
 expi=(int)exp;
 printf("2) expi = %d\n", expi);
 return 0;
}
---------------- CODE END -------------------
e l'esito dell'esecuzione e':
administrator@X ~/misc
$ pot
1) expi = 100
2) expi = 100
Inoltre, non ti servono tutti quei cast, o almeno credo...
compilando il seguente codice:
---------------- CODE BEGIN  (pot1.c) ----------------
#include <math.h>
#include <stdio.h>
int main()
{
 int expi, pot;
 double exp;
 pot = 2;
 expi=pow(10.0,pot);
 printf("1) expi = %d\n", expi);
 exp=pow(10.0,pot);
 expi=exp;
 printf("2) expi = %d\n", expi);
 return 0;
}
---------------- CODE END -------------------
con l'opzione -Wall, non ho ottenuto neppure un warning.
buon pow a tutti
ciao
bepin
Newsgroup: it.comp.lang.c
Titolo: Cambiare i colori...

Ciao,
qualcuno sa dirmi come si fa a cambiare i colori di un'applicazione in
modo testo?
Ho fatto un programma, compilato su Solaris con il gcc.
Vorrei sapere se ci sono dei comandi C tipo il SetColor del dos, per
cambiare il
colore del testo
Grazie
Thuder Ghost
P.S.
Se potete rispondermi in Mail, il mio indirizzo e'
ghe...@cdcsun.cdc.polimi.it

colore del testo
In generale si utilizzano sequenze escape ( ovvero sequenze di
caratteri precedute dal carattere escape (27 o 0x1b )). La sequenza
dipende poi dal tipo di terminale. Per ovviare a questo genere di
problemi si puo ricorrere alla libreria curses o ncurses. Io per Linux
utilizzo quest'ultima.

Newsgroup: it.comp.lang.c
Titolo: bios.h

Salve a  tutti!
Spero possiate darmi qualche indicazione......
Mi servirebbe avere delle descrizioni aabbastanza dettagliate delle funzioni
della libreria bios.h. Sapreste darmele o indicarmi come reperirle?
La libreria bios.h ha un'equivalente  sotto Linux?
Vi ringrazio per l'attenzione e per l'aiuto che mi darete.
Saluti
---
Gion Uein
Per rispondere in e-mail togliere NOSPAM dall'indirizzo.

Gion Uein
Saluti,
    Mardy

Newsgroup: it.comp.lang.c
Titolo: esercizio 2

Si indichino nel giusto ordine,del seguente prg C,motivando la risposta
data.
#include <stdio.h>
#define dim 4
typedef enum (medie, superiori, diploma, laurea)studi;
main ()
{
int A[dim],B[dim]=(20, 100, 50,30);
studi s;
for (s=superiori; s<=laurea; s++)
 a(s)=b(s)%(s);
for (s=laurea; s>=superiori; s--)
 if(a[s])
  switch(s)
 {
  case superiori: printf("perito\n");break;
  case diploma: printf("diplomato\n"); break;
  case laurea: printf("dottore\n");break;
  default: printf("???\n");
 }
}
io ho fatto cosi:
#include <stdio.h>
#define dim 4
typedef enum  {medie, superiori, diploma, laurea}studi;
int A[dim],B[dim]={250,100,50,30};
studi s;
main ()
{
 for (s=superiori; s<=laurea; s++)
 A[s]=B[s]%(s);
for (s=laurea; s>=superiori; s--)
 if(A[s])
  switch(s)
 {
  case superiori: printf("perito\n");break;
  case diploma: printf("diplomato\n"); break;
  case laurea: printf("dottore\n");break;
  default: printf("???\n");
 }
}
penso di aver fatto bene.
Non ho capito cosa significa l'istruzione
studi s;

 studi s;
Crea un'istanza di studi che nella fattispecie è un tipo enum.
EMG

studi s;
Non è un'istruzione.
E' la dichiarazione di 's' come enumerazione di tipo 'studi'.
--
Andrea Laforgia        (
andrea_...@bigfoot.com
)
Newsgroup: it.comp.lang.c
Titolo: Prodotto scalare vettore vettore [codice inside]

Ragazzi chi può darmi una mano con questo piccolo programma?
ecco il MAIN:
#include <stdio.h>
main ()
{
int j, k, p;
int *a, *b,*ultato;
printf ("Vettore x Vettore\n");
printf ("Inserisci la grandezza dei due vettori: ");
scanf ("%d",&p);
a= (int *)malloc(p*sizeof(int));
b= (int *)malloc(p*sizeof(int));
for (j=0;j<p;++j)
{
printf ("Inserisci il valore di A[%d]: ",j);
scanf ("%d",&a[j]);
}
for (k=0;k<p;++k)
{
printf ("Inserisci il valore di B[%d]: ",k);
scanf ("%d",&b[k]);
}
vetvet (a,b,p,ultato);
printf ("Scalare Risultante: %d",ultato);
printf ("\n");
}
ED ECCO LA FUNZIONE:
#include <stdio.h>
void vetvet (int *A, int *B,int n,int *ris)
{
int i;
for (i=0;i<n;++i)
{
*ris += (*(A+i)) * (*(B+i));
}
}
GRAZIE
--
Marco Sommella {Skonvols2k}
somme...@inwind.it
skonv...@iol.it

b= (int *)malloc(p*sizeof(int));
Non hai allocato memoria per *ultato .
-- 
Saluti,
    Mardy

 ha scritto nel messaggio
news:hZMU6.12212$fG4.4...@news.infostrada.it...

Dopo scanf devi svuotare il buffer di input facendo per esempio seguire a
scanf una istruzione del genere:
while(getchar()!='\n');

Newsgroup: it.comp.lang.c
Titolo: MOLTO STRANO:chi me lo spiega??? (fread e allocazione dinamica)

(leggo da un file strutturato)
a parte le strutture dati...
typedef struct x {
        unsigned char *bits;
        unsigned rule;
} state_action;
state_action **table;
...
...
for ( l=0 ; l < 4 ; l++ ) {
 //alloco lo spazio per una struttura
 table[l]=(state_action *) malloc(sizeof(state_action)); 
 //alloco lo spazio per l'array di unsigned char di quel blocco.
 table[l]->bits = (unsigned char *) malloc (blocks_in_world);
 //leggo dal file il blocco di 8 caratteri 
 fread( table[l]->bits,sizeof(unsigned char) , blocks_in_world, filectrl );
 
 //leggo un altra informazione...
 fread( &table[l]->rule , sizeof(unsigned) , 1 , filectrl );
}
 //NOTA BENE QUESTA CHIUSURA...
(A) fclose(filectrl);
(B) for (l=0;l<table_size;l++){
 printf("%s\n",table[l]->bits);
}
ora: così mi dà segm. fault nella stampa poichè la fclose mi dealloca il 
table[2].
se tolgo la fclose no.
Come mai???
Se provo a stampare in questa sequenza
(B)
(A)
(B)
la prima esecuzione di (B) va ok...poi (A) rieseguo (B) e table[2] viene 
deallocata o cmq messa tutta a 0.
Sono nel pieno del sonno...ma questo proprio non lo capisco.
Ciao e grazie.
-- 
__________________________________
"Ama e fai c'ho che vuoi".... 
__________________________________

  table[l]=(state_action *) malloc(sizeof(state_action));
Ma non hai allocato spazio per l'array dinamico di puntatori:
table = malloc( sizeof( state_action * ) * 4 );
prima del ciclo for.
EMG
--
EMAG Software Homepage:     
http://www.emagsoftware.it
The EMG's ZX-Spectrum Page: 
http://www.emagsoftware.it/spectrum
The Best of Spectrum Games: 
http://www.emagsoftware.it/tbosg

 
si si...c'era. Avevo accorciato.
        table = (state_action **) malloc( table_size );//per prova della ht
ma il problema è che memorizza correttamente... solo che se chiudo il file 
mi cancella una locazione
 [cut]
ciao e grazie.

Newsgroup: it.comp.lang.c
Titolo: Makefile

Ciao,
mi potete indicare un tutorial che mi insegni a scrivere
un Makefile?
Grazie :-)

 ha scritto:


Newsgroup: it.comp.lang.c
Titolo: C e C#

scusate ma che differenza c'è tra C e C#?
non sapevo nemmeno dell'esistenza di qto C# e un amico me l'ha
chiesto...
grazie

scusate, mi ha già risposto google...
;-)

Newsgroup: it.comp.lang.c
Titolo: Insertion Sort Ricorsivo

Qualcuno è in grado di rendermi ricorsivo questo programma???
Si tratta dell'Insertion Sort.
#include <conio.h>
#include <stdio.h>
// Definizione della procedura per l'ordinamento "per inserzione"
void Insertion_Sort (int N, float *vet)
{
int i, primo, j, p, x;
primo = vet[0];
p = 0;
for (i=1;i<=N-1;i++)
if (vet[i] < primo)
{
primo = vet[i];
p = i;
}
vet[p] = vet[0];
vet[0] = primo;
for (i=2;i<=N-1;i++)
{
x = vet[i];
j = i;
while (x < vet[j-1])
{
vet[j] = vet[j-1];
j = j - 1;
}
vet[j] = x;
}
}
main()
{
// Dichiarazione variabili
float vet[20];
int k,N,I;
/* Introduzione dati di input (numero totale di elementi e contenuto
dell'array) */
clrscr();
do
{
printf("Introdurre il numero di elementi (MAX 20): ");
scanf("%d", &N);
if (N > 20)
printf("Il numero non deve superare 20! \n");
}
while (N > 20);
for (I=0;I<=N-1;I++)
{
printf("Introdurre l'elemento Nø %d: ", I+1);
scanf("%f", &vet[I]);
}
// Visualizzazione dell'array iniziale
printf("Serie iniziale: \n");
for (I=0;I<=N-1;I++)
printf("%f ", vet[I]);
// Chiamata della procedura Insertion_Sort, completa dei parametri attuali
Insertion_Sort (N, vet);
// Visualizzazione dell'array risultante
printf("\nSerie ordinata: \n");
for (I=0;I<=N-1;I++)
printf("%f ", vet[I]);
// Pausa
getch();
}

 ha scritto nel messaggio
news:yMMFa.125270$g92.2...@news2.tin.it...


 ha scritto nel messaggio
news:_WMFa.81760$lK4.2...@twister1.libero.it...


 Siamo sulla stessa barca...
I fatti vostri ve li raccontate in mail privata? Grazie.
-- 
-=[]=---iAN CooG---=[]=-
* Intel Pentium: random inside! (tm)

 Siamo sulla stessa barca...
Potreste quotare meglio.....?!??!!!!
Tommy

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

Avrei bisogno di informazioni e di qualche aiuto su come trasformare
l'algoritmo di ordinamento "QuickSort" in uno equivalente non ricorsivo!
Grazie....
    Kernel83


L'algoritmo Quicksort e' ricorsivo per definizione. Se vuoi un algoritmo 
di ordinamento non ricorsivo puoi usare Bubblesort, Insertion Sort 
oppure Selection Sort.

 wrote in message
3F35A5FD...@lombardiacom.it...


 QuickSort non ricorsivo, anche se ottengo codice non strutturato!
[le risposte si mettono *sotto* al messaggio originale, non sopra. Ho 
corretto.]
La cosa non e' proprio immediata, probabilmente la soluzione piu' 
semplice e' quella di usare uno stack di appoggio. Tieni presente pero' 
che in questo modo stai simulando la ricorsione, quindi non e' che stai 
cambiando molto...
Newsgroup: it.comp.lang.c
Titolo: Cosa mi serve per sviluppare un piccolo kernel in c++?

Salve a tutti vorrei sviluppare un piccolo kernel in c++ con djgpp è
possibile, premetto che ho già tutti i pacchetti gnu come gcc, gpp, as,
nasm, make etc...
Potreste darmi qualche dritta o sapete dove posso trovare maggiori
informazioni mi sono gia letto le faq di nondot, e altre e tutti dicono la
stessa cosa ma non ho trovate nessun esempio concreto.
grazie mille a tutti
umberto giacobbi

non ho trovate nessun esempio concreto.
Perché non prendi un libro?
A. S. Tanenbaum, A. S. Woodhull "Sistemi Operativi, Progetto ed 
Implementazione", ed UTET.
Saluti

 ha scritto nel messaggio
news:0Ysa9.102779$n04.2...@twister2.libero.it...


 stessa cosa ma non ho trovate nessun esempio concreto.
Oltre ai Libri che ti hanno già consigliato in rete puoi trovare un 
sacco di codice open source di kernel. Alcuni esempi sono :
Minix - un sistema operativo scritto da Mr Andrew S. Tanmbaum a scopo 
didattico
Linux - Non ha bisogno di presentazioni, il suo kernel è probabilmente 
quello più completo tra quelli opensource anche se studiarlo è compito 
non da poco! E' però interessante la guida all'hacking del kernel che ti 
spiega come funziona ogni passaggio mi sembra la trovi su 
kernel.org
 se 
no google
Darwin - il kernel del nuovo sistema Apple OsX è anche questo opensource
Infine guarda su 
www.sourceforge.net
, è pieno di piccoli e grandi kernel 
come quello di FreeDos
Ciao
Wezzy
Newsgroup: it.comp.lang.c
Titolo: E' possibile fare un programma che viene lansciato dal boot di un disketto?

E' possibile fare un programma che viene lansciato dal boot di un disketto e
una volta caricato lansci a sua volta il 
command.com
 ?
se è possibile gradirei qualunque info o riferimento a qualunque cosa vi
ringrazio anticipatamente 
ri...@euromedia.it
 possibilmente deve essere
scritto in c o c++

 wrote in message
7i125n$ag2$1...@fe2.cs.interbusiness.it...


 > se è possibile gradirei qualunque info o riferimento a qualunque cosa
Grazie della risposta ma non è proprio quello che andavo cercando voglio
creare un programma che faccia da boot di systema( che quindi venga caricato
come file di systema e che a sua volta richiami i corispondenti 
command.com
,
config.sys e autoexec.bat) in pratica vorei sostituire il programma che di
solito viene lansciato a l'avio del dos i file dovrebbero essere io.sys,
msdos.sys e system.1st di solito quando il computer deve avviare il sistema
operativo va a cercare uno di questi file non so quale e io vorei che invece
di quello standard venga caricato un mio file scritto in c o c++.



Ma se e' il 
command.com
 che legge autoexec.bat per lanciare gli
altri programmi.
Piuttosto occorre scrivere un COM che abbia lo stresso nome
e le stresse proprieta' di 
COMMAND.COM
--== Sent via Deja.com 
http://www.deja.com/
 ==--
---Share what you know. Learn what you don't.---

, 
koma...@tin.it
 
says...
Dopo il p.o.s.t.,per il Dos,vengono letti io.sys che accede all'I/O di 
base del computer fornite dalla ROM, poi cairca sysinit che inizia a 
leggere msdos.sys e a caricarelo in memoria,msdos.sys implementa i 
servizi di sistema del Dos.Dopodiche' sysinit cerca il file config.sys 
infine sysinit esegue 
command.com
 che è l'interprete dei comandi.
Se ho ben capito vuoi craere un tuo s.o. :-)
Quando hai fatto mi farebbe piacere provarlo!
Ciao

> Se ho ben capito vuoi craere un tuo s.o. :-)
O un virus da boot sector ?
Scherzo ...
Prova a dare un'occhiata qui:
http://www.nethelp.com.au/data/amipost.html
(ero arrivato da testo pdf  in italiano molto bello sull'argomento il cui
link non trovo più ...)
Altre informazioni dovresti trovarle tra le faq per la compilazione di
Linux.
A suo tempo avevo postato una richiesta per le opzioni di compilazione del C
per ottenere una immagine di un programma pronta per essere messa su eprom
(il problema è simile) e avevo ottenuto risposte esaurienti e molto
materiale, ma non riesco a trovare più niente (... sono passato per un paio
di format dell'HD :-(, però intanto la ricerca continua ).
Tieni presente che un programma compilato come .com (hai molte restrizioni
sul codice e sugli indirizzamenti) è già un'immagine di quello che andrà in
memoria :-)
Tienici aggiornati sulle novità, l'argomento lo reputo molto interessante.
Ciao, Carlo
c_altieri@iol aggiungere .it

ivan...@my-dejanews.com
 wrote:

esatto... ma questo da spunto ad una idea ...
potresti proprio scrivere una nuova shell specificarla come shell di
default nel config.sys
con il comando SELL= ... ...  e  da questa richiamare 
COMMAND.COM
 .
Non so se può funzionare.
Ciao By Lucio.
Newsgroup: it.comp.lang.c
Titolo: Iteratori su liste

Ciao a tutti, ho un problema sugli iteratori per una lista
concatenata... vi posto il codice...
struct lista {
	void *elem;
	struct lista *next;
	};
typedef struct lista *list;
struct iteratore {
	list *pos;
};
typedef struct iteratore *iterator;
iterator get_iterator (list l){
	iterator ptr;
	ptr=(iterator) malloc (sizeof(iterator));
	ptr->pos=&l;
	return ptr;
}
int has_next(iterator i){
    if ( (*i->pos)==NULL)
    return 0;
    return 1;
}
void *next (iterator i){
     void *prevptr;
     if (i->pos){
     prevptr=(*i->pos)->elem;
     *i->pos=(*i->pos)->next;
     return prevptr;
     }
}
Nel main.c è definito quanto segue:
....
i = get_iterator(l);
	/* deve stampare "a, b, c, d, e," */
	while(has_next(i))
	{
		char *s = (char *)next(i);
		printf("%s,", s);
	}
	printf("\n");
	return 0;
}
Ora il fatto è che non mi stampa abcde ma tutti caratteri strani e non
esce mai dal ciclo. Il problema è che nella funzione void *next c'è
qualcosa con i puntatori di sbagliato.. ( credo ) ma non so come
venirne a capo... sono 2 giorni che ci sbatto la testa... Grazie per
le risposte!!!

		char *s = (char *)next(i);
if (s == NULL)
	// qualcosa faro'


Newsgroup: it.comp.lang.c
Titolo: stampa a video

Ciao a tutti..
ho la necessità di avere un output a video che si otterrebbe 
praticamente così
int stampa()
{
	int i = 0;
	...
	for(i =0 ;i<100 ;i++ )
	{
		system("clear");
		printf("i=%d",i);
	}
	...
}
solo che questa implementazione, oltre essere particolarmente lenta, 
funziona decentemente (NON BENE) solo con il framebuffer disattivato...
praticamente ho una parte del testo che deve restare fisso e variare 
l'altra.. tipo un contantore  che dica sempree nomevariabile = $VALORE ...
tipo come quando si fa un wget che dice sempre la percentuale attuale...
spero di essere stato chiaro.
grazie
byez

 byez
Ciao

Newsgroup: it.comp.lang.c
Titolo: Le faq??

ho trovato su 
http://www.eskimo.com/~scs/C-faq/top.html
le faq del gruppo, ma sono in formato html: esistono in formato testo?
e magari zippate?
grazie!
There is NOSPAM in my signature ;-)

 le faq del gruppo, ma sono in formato html: esistono in formato testo?
sono postate mensilmente su comp.lang.c e comp.lang.c.moderated in
formato testo.  mi sembra anche che nella starting page ci sia un link
ad un file testo, ma non ne sono sicuro.  In ogni caso, puoi usare
anomymous ftp da 
RTFM.mit.edu
 (che conserva una copia di tutte le faq)
e cd /puv/usenet/comp/lang.c/; oppure dejanews.
-- 
Maurizio Loreti                      
http://wwwcdf.pd.infn.it/~loreti/mlo.html
Un. of Padova, Dept. of Physics - Padova, Italy          
lor...@padova.infn.it

 e cd /puv/usenet/comp/lang.c/; oppure dejanews.
..oops.. : /pub/usenet/comp.lang.c/ , ovviamente.  scusate.

Newsgroup: it.comp.lang.c
Titolo: METHOD POST con librerie standard

Ciao, qualcuno sa come passare dei dati nella modalita' POST dall'interno di
un CGI?
il problema e' questo:
mandare un form method post ad un cgi che dal suo interno fa partire un
altro form implicito  via POST ad un'altro cgi in modo che i campi input che
arrivano al 2° cgi non siano in chiaro...
nb ...ovviamente in turbo c!
Grazie a tutti.

 arrivano al 2  cgi non siano in chiaro...
apri un socket con il server e mandi con send() il comando POST
oppure avvii il secondo programma passandogli gli argomenti sulla linea
di comando
oppure apri un socket unix e li fai comunicare
oppure usi una fifo
oppure usi la memoria condivisa
oppure usi una coda messaggi (stile unix-IPC)
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
Il piu' bel momento dell'amore e' quando ci si illude che duri
per sempre; il piu' brutto, quando ci si accorge che dura
da troppo.

Newsgroup: it.comp.lang.c
Titolo: CERCO ESERCIZI

Cerco esercizi su funzioni, array, puntatori e strutture per C.
Ditemi dovo posso trovarli nella rete o se no postatemeli.
Se sono gia' svolti e' meglio!!
Potete rispondere a 
car...@supereva.it
Grazie



Li cercherei anch'io, visto che sto imparando e
servono a molto. Grazie
Igor ROssetti

Newsgroup: it.comp.lang.c
Titolo: Creare cartella e aprire file

Salve a tutti , per creare una cartella in C sotto WinDos
si usa il comando system ("mkdir nomecartella"); ma se poi
voglio creare un file * fp = fopen ("nomefile"); in questa cartella
come posso fare .
Mi date un consiglio ?
Grazie a tutti
Ciao

 come posso fare .
fp = fopen ("nomecartella\\nomefile");
Evitare il crosspost è una cosa buona.
R.D.

... ti ringrazio
Ciao

 R.D
... e se il nome della cartella e in una variabile char e devo aggiungere un
char tra  "" ?
Ciao
.

 char tra  "" ?
strcat, sprintf o simili a patto che:
   1) Il nome della cartella sia puntato da un variabile char * (e non 
char) (idem per il nome del file).
   2) Hai a disposizione un buffer con abbastanza spazio per l'intero 
nome (nome cartella + nome del file).
R.

... ti ringrazio .
Ciao

 R.
... ti ringrazio .
Ciao

 ... ho utilizzato strcat ma senza successo .
Perche' non posti il codice che hai scritto cosi' vediamo dov'e' il 
problema?
R.
Newsgroup: it.comp.lang.c
Titolo: usare le socket

Salve a tutti...
ho da poco iniziato ad usare le socket sotto linux, e ho notato alcune
stranezze che vorrei domandarvi...
la prima e' questa: ho aperto una socket verso un mio applicativo (che
sono certo funzionare) usando la funzione connect, quindi devo inviare
login e password per effettuare il login... ora.. il mio applicativo
server richiede 
login :  <--- mando login\n
password: <--- mando password\n
ora... mi accade che se, dopo il connect faccio :
/* brutto da vedere il strlen, ma per semplicita' scrivo cosi' */
write(sockfd,"login\n", strlen("login\n") );
write(sockfd,"password\n"), strlen("password\n") );
non mi effettua il login correttamente... se pero' introduco uno sleep ()
tra i due write allora funziona... perche'? :)
altro quesito: nel caso che il sito remoto chiuda la connessione con il
mio client, come posso fare in modo che il mio client esca o me lo faccia
presente? 
Sbaglio se dico che usando select() e mettendo la sockfd oltre che tra il
set di read anche nel set di exception (che peraltro non ho ben capito a
cosa serva, quest'ultimo set, dato che le pagine di manuale non lo
spiegano... ad intuizione posso cercare di capire che "exceptions" e'
sinonimo di errori non critici, come un close connection o roba simile)
posso rilevarlo?
Vi ringrazio in anticipo per le risposte.
---------------------------
Il giorno del grande download si avvicina... (GNAGNA)
---------------------------
                                          Stefano Borini

 posso rilevarlo?
Si puo' anche usare la select() e far funzionare il tutto in modo
asincrono ma la mia esperienza mi consiglia di utilizzare questi metodi
solo in caso di estrema necessita' (cioe' se non se puo' fare a meno).
C'e' anche da considerare che il codice scritto per utilizzare la
select() non e' molto portabile, a differenza delle send() e delle
recv() che hanno un funzionamento molto piu' standard.
-- 
     (ZZZ)       Filippo Salotti, Bagni di Lucca, Lucca, Italy.
    //   \\  _                 E-mail : 
fil...@humnet.unipi.it
   /Y\    ZD<_o===============================================o
 .oZZZZZo.     | Studente Ingegneria Informatica Automatica  |
<OXXXXXXXO>    | Dip. Sistemi Elettrici Universita' di Pisa. |

 solo in caso di estrema necessita' (cioe' se non se puo' fare a meno).
il mio scopo e' realizzare un client grafico, quindi sono obbligato ad
affrontare la cosa in maniera asincrona...
ho letto alcune page che trattano delle socket, ma la trattazione e'
sempre abbastanza scadente... d'altro canto le pagine di manuale non
aiutano.. sapresti mica consigliarmi adeguate letture?
grazie infinite :)


 aiutano.. sapresti mica consigliarmi adeguate letture?
Il libro migliore secondo me che tratta queste cose e' "Unix Network
Programming" di Stevenson, e' in inglese e purtroppo anche un po'
costoso.
Comunque vedo che sei studente universitario cerca, in biblioteca non
credo non ce ne sia nemmeno una copia.
Ciao.


 credo non ce ne sia nemmeno una copia.
vedro' cosa trovo... le biblioteche di info qui da noi sono abbastanza
scadenti...al limite lo faccio ordinare in libreria...
grazie ancora :)

Newsgroup: it.comp.lang.c
Titolo: get client machine's IP-address

 network programming books.
Thanks Mark for your answer, but I'm not sure getpeername can solve my
problem.
I'll try to explain myself better with an example:
You are connected from a linux machine (client) to a solaris machine
(server) with
a telnet session during which you want to execute this c-program
(complex.c)
main()
{
        printf("Hi, Mark\n");
/* Now I wish to know the IP-address of the machine on which
   the string "Hi, Mark" is displayed"
 */
}
This program runs in the server but thru the pseudo-tty its output is
displayed
at the client machine.
No sockets are used so we haven't the first arg to pass to the
getpeername.
You can try to pass 0 as socket-fd to getpeername but it returns the
local-host
IP-address (127.0.0.1).
So what's the matter ?
Maybe work around the slave part of the pseudo-tty ?
Sorry for this silly question but I'm not a network programmer, really
this is
my first networking problem, and also reading Stevens' I haven't yet
found a
solution.
Anyway, thanks a lot
Lucio
io...@tin.it

Mi devo essere perso il post originario del problema, comunque, se ho
decifrato bene l' "anglo-messaggio",..., se ti interessa l' IP di un
client collegato tramite Telnet perche' non lo ricavi prima che la
richiesta di connessione arrivi al demone di Telnet? Una specie di tcp
wrapper nel file inetd.conf....
-- 
Saluti,
Guarapito.
Newsgroup: it.comp.lang.c
Titolo: ciclo for dubbio

Sarŕ un fesseria ma non capisco perchč non va. dopo avergli dato la
variabile "a", l'esecuzione non mi da niente. cursore fermo. zia a che bra
sono int.
ma si scrivono cosě i cicli? se la sintassi č sbagliata abbandono i corsi su
internet e mi prendo un libro. trovo roba discordante su internet!
for (bra=1; bra>a; bra=bra+1)
    {
    printf("prova su : %d\n", bra);
    cont++;
    }
grazie a tutti

 for (bra=1; bra>a; bra=bra+1)
              ^^^^^
bra<a
-- 
ZeD
Io, solo io, sempre io, anche io, nient' altro che io, proprio io.


niente, non cambia nulla. ma perchč non avrei potuto scrivere "bra=1" ?
grazie cmq per l'interessamento.
bye

 bye
evidentemente hai sbagliato qualcosa prima, prendi spunto da questo di
ciclo, che di certo funziona:
main()
{
  int bra;     // di solito si usa i :P
  int a=10;    // a è stato inizializzato vero ?
 
  /* scrivere bra > a e poi incrementare bra da due risultati:
   * o un ciclo infinito
   * o un ciclo che nemmeno inizia  (questo forse era il tuo caso)
   * "bra = bra+1", "bra += 1" e "bra++" (in questo caso) è la stessa cosa
   */
  for( bra=1; bra < a; bra++)
  {
     printf("Valore di bra: %d\n", bra);
  }
  return 0;
}   
Ciao.
Matico

 >> > internet e mi prendo un libro. trovo roba discordante su internet!
CUT CUT
chiedo scusa a tutti, ho trovato l'errore ed era una fesseria, sarà il
caldo.... :-)
siete stati cmq molto gentili!
alla prossima!
bye

    }
se hai inizializzato correttamente le variabili e bra è minore di a il
ciclo non partirà mai.
Inverti la condizione.
for (bra=1; bra<a;bra++)    {
	printf("prova su : %d\n", bra);
	cont++;
}
Flavio Moretto
flamor@[viaquesto]
qzerty.it
 
icq 122395780 (pat)
- internet  + cabernet

 ma si scrivono così i cicli? se la sintassi è sbagliata abbandono i corsi su

Newsgroup: it.comp.lang.c
Titolo: Indirizzi duplicati

Ciao a tutti,
Ho una funzione che va a leggere da memoria una serie di stringhe:
il suo compito č di ritornarmi in una variabile di tipo
char **Resullt
le stringhe lette.
Se uso questa funzione una sola volta tutto č ok, ma se la funzione viene
usata due o piů volte di seguitosu due locazioni diverse l'indiriězzo e il
contenuito del primo risultato diventano inspiegabilmente uguali a quelli
del secondo:
Ret1 =(char*) malloc(sizeof  Ret1);
Ret2 =(char*) malloc(sizeof  Ret2)
Ret1=retfunc(location_A);
// *Ret="Stringa A";
// Ret = 0010 (indirizzo);
Ret2=retfunc(location_B);
// *Ret2 = "Stringa B"
// Ret2= 0065
A Questo punto Ret =Ret2 sia per contenuto sia per indirizzo... Qualcosa non
mi quadra...
Qualcuno sa dirmi se la malloc ha qualche difettuccio o se sono io che non
riesco ad usarla decentemente?
Grazie a tutti.

 riesco ad usarla decentemente?
E' molto piu' probabile che sia questo secondo caso ;)
In particolare, non ha senso allocare memoria, per poi
assegnare al puntatore un altro valore.  Si ha, cioe',
un "memory leak", perche' la memoria precedentemente 
allocata non viene piu' liberata.  
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Ret2 =(char*) malloc(sizeof  Ret2)
Ma sti cast proprio non ce la fate a non metterli?
Comunque pensa sempre a questo: "se qualcosa puo' andare male, lo
fara'".
Mox

Newsgroup: it.comp.lang.c
Titolo: IDE per C gratis

Ciao,
esiste qualche IDE freeware o shareware per sviluppare codice C (magari con
una sorta di codeinsight del JBuilder)?
grazie

 ha scritto nel messaggio
news:9os09s$ln...@intra09.infocamere.it...

DEV C++

 ha scritto nel messaggio
news:9p9erp$c8h$1...@pegasus.tiscalinet.it...

Vi sembra troppo se chiedo anche il link?!
grazie!



si
cmq
http://www.bloodshell.net
 
o 
shed.net
non ricordo
cod

 ha scritto nel messaggio
news:9p9jk9$ne...@intra09.infocamere.it...

www.bloodshed.net
bastava una ricerca con google però....suvvia...non siamo mica bambini!!


Grazie,
ma non riesco a far funzionare il codeinsight..qualcuno mi puņ aiutare?
Newsgroup: it.comp.lang.c
Titolo: Rilevare la disconnessione di un client

Ho un processo server che deve inviare dati ad uno client già collegato
tramite i socket.
Il client quindi rimane in attesa (con una read) fino a quando non capita
(occasionalmente) che il server gli invii dati (con un'apposita write).
In casi normali, tutto funziona. Il problema è, invece, quando il client per
qualche motivo si disconnette. Il server non si accorge di nulla (per lo
meno, non fino a quando deve mandargli dati, cosa che fa saltuariamente) e
crede che il client sia ancora disponibile.
Per risolvere questo problema, pensavo di fare così: il server esegue una
fork: mentre il padre continua a fare ciò per cui era progettato, il figlio
rimane "intrappolato" in un ciclo infinito in cui richiama infinite volte
una funzione "controlla" che controlla se il client sia ancora connesso (e
in caso negativo, per esempio uccide il padre).
Il problema è: come implementare questa funzione? In rete ho trovato la
funzione poll() che sembra faccia al caso mio. Ho provato ad utilizzarla, ma
non funziona... cioè non rileva la disconnessione del client!
Ecco come ho implementato la funzione controlla:
void controlla(int connfd, char dest){
 struct pollfd fds[1];
 int s;
 fds[0].fd = connfd;
 fds[0].events=0; /*dato che gli eventi POLLERR e POLLHUP sono già compresi,
almeno a quanto dice man poll */
 printf("verifico che il client sia connesso...\n");
 if ((s=poll(fds, 1, -1))<0){ perror ("poll"); exit (1); }
 if (fds[0].revents & (POLLERR | POLLHUP)) {
 printf("il bastardo si è disconnesso!!! s=%i\n",s);
 kill(getppid(),SIGUSR1);
 exit(1);}
 else printf("connessione ok s=%i\n",s);
}
Sapete dirmi perchè non funziona?
tnx
-- 
SigiTM
Togli 'NOSPAMMM' per rispondermi.
Visita il sito dei Metal Detector: 
http://listen.to/metaldetector

 Sapete dirmi perchè non funziona?
Mi dispiace, su questo NG sei OT.
Tommy
Newsgroup: it.comp.lang.c
Titolo: Aiuto ! La graphics.h mi fa impazzire !

Premetto, so benissimo che la graphics.h e il problema che sto per
porre riguarda piu' le caratteristiche del Turbo C compiler della
Borland che il linguaggio C in se..ma vi prego..non so piu' a che
santo votarmi !
Dunque il problema e' questo, Utilizzando il TurboC 2.01 (si quello
del 1989 avete capito bene) mi trovo a dovre visualizzare su schermo
una immagine bitmap, ora, dopo aver utilizzato dalla graphics.h
initgraph(VGA,VGAHI,"C:\\TC");
che fa passare tranquillamente in modalita' VGA 640X480
dovrei utilizzare (almeno a quanto dice l'help in linea)  le funzioni
getimage e poi putimage... ma ecco che arriavno i problemi... per
quanto ho potuto interpretare dall'help il formato corretto dovrebbe
essere (scrivo in BNF) :
getimage(<left>,<top>,<right>,<down>,"<nomefeile.bmp>");
ma ..e qui primi problemi.. down, top, left e right che sono qui le
dimensioni dei lati o le coordinate dei lati dell'imamgine ?
Poi i dolori vengono cojn la funzione putimage che dovrebbe esesre
quella che visualizza l'immagine vera e propria,
il suo formato e'
putimage(int left,int top, void far *bitmap,int op);
ma che vuol dire ? nel senso left e top cosa sono le coord de3i lati
anche qui ? e op che valori puo' assumere e quali sono i loro
significati ?
e come bitampa che ci rimetto c:\\tc\nomeimmagine.bmp che deve essere
la stessa di getimage ?
Vi prego datemi una mano..non riesco a trovare un piffero di
documentazione su questo compilatore antidiluviano..e non ditem,i...ma
xche non usi il compilatore xxx o yyyy invece del Turbo C, xche non
posso farlo per esegenze di esame.
Augusto Pucci
Webmaster di Prospektiva On-line
http://www.prospektiva.it

documentazione su questo compilatore antidiluviano..
L'help on-line non ce l'ha ?
ciao (segue e-mail)

L'help on-line non ce l'ha ?
Si ce l'ha ma purtroppo e' piuttosto scarsino, non fa nessun esempio e
spesso e volentieri come ne caso di op cita un parametro senza
elencarne i possibili valori ne' gli effetti ottenuti cambiando valori
al flag.
Leggendo la sua risposta mi sono accorto di una cosa xro', che avevo
male interpretato (e per questo non ne capivo la "filosofia"
intrinseca) questa serie di istruzioni... infatti cio' che volevo fare
io non era creare dei "mirror" di areee dello schermo, ma visualizzare
in output una immagine (in formato bmp per esempio)... come potrei
fare per esempio a far si che (ovviamente in mod grafica) il mio
programma permetta di visualizzare a schermo immagini prelevandone le
informazioni da file gif, o bmp realizzati con pacchetti garfici ?

Newsgroup: it.comp.lang.c
Titolo: Come cancellare un file?

Ciao a tutti!
Volevo sapere se qualcuno di voi puņ aiutarmi a capire come posso fare a
cancellare un file, in questo caso un file di testo.
Spero possiate aiutarmi!
Ciao ciao
estr...@libero.it
estr...@tiscalinet.it
http://web.tiscalinet.it/tempo_libero/index.html

 wrote in message
8rt68d$8pd$1...@fe2.cs.interbusiness.it...


Grazie!!!
Sei stato molto gentile ed esaustivo.
Lo provo subito ;-)


 cancellare un file,
remove( "nomefile" );
EMG


Grazie :-)
estr...@libero.it
estr...@tiscalinet.it
http://web.tiscalinet.it/tempo_libero/index.html

Newsgroup: it.comp.lang.c
Titolo: convertire int in hex

[Neofita]
Scusate, avrei la necessità di convertire un int in hex per salvarlo in un 
file di testo ...
Esiste una funzione già integrata in C?
Qualche dritta?
Grazie
[Taz] 

news.sunrise.ch
 ha scritto:

Ad esempio, puoi farlo con fprintf() usando una opportuna 
stringa di formattazione. Ti lascio la gioia di scoprire quale 
(prendilo come spunto di approfondimento).
Ciao.

 formattazione.
Avevo già fatto così, ma credevo ci fosse un'altro modo più "elegante" ...
Comunque, ti ringrazio
Ciao, ciao
[Taz] 

 Esiste una funzione già integrata in C?
int i = 100;
char buf[512];
sprintf (buf, "%x", i);
Prima cerca su google.
Newsgroup: it.comp.lang.c
Titolo: Gotoxy

Per quale motivo il comando gotoxy non mi produce alcun effetto?
Mi spiego con un esempio:
il puntatore è in alto a sinistre dello schermo per effetto del clrscr();
scrivo gotoxy(10,10); ma il puntatore mi resta fermo dove era!!!
Uso il TurboC 2.01 della borland e Win98.
Grazie!
Ciao!
--
Marco "DUFF" Palermo
Marc...@Hotmail.com
http://www.marcoduff.cjb.net/

 il puntatore č in alto a sinistre dello schermo per effetto del clrscr();


 getch(),
No, non va!
Ho risolto il problema creando una window:
window(1,1,20,20);
gotoxy(10,10);
Ora funziona!


Puoi usare gotoxy in modalita´ grafica, e quindi dopo che hai chiamato
initgraph().
Quel "puntatore" che tu vedi e´ quello del mouse manovrato in modalita´
testo, altrimenti dovresti gestire il mouse con le funzioni appropriate per
vedere la freccina.
Il gotoxy(10, 10) ti sposta la posizione dove vuoi disegnare in modalita´
grafica sullo schermo, se per esempio chiami la funzione circle vedrai un
cerchio disegnato con centro in (10, 10).
Guarda gli esempi di gotoxy sull´ help e installati il borlandc che il
turboC oramai lo usano solo alla paleontologia informatica. 8)

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

Primo problema:
    scrivo un programmino in C, faccio il make per compilare, come faccio ad
eseguirlo ?
Secondo :
    che tasti bisogna premere per ottenere le parentesi graffe ?
Ho usato emacs sotto Mandrake

 Ho usato emacs sotto Mandrake
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

     che tasti bisogna premere per ottenere le parentesi graffe ?
AltGr Maiusc +
Come per le quadre, solo con il tasto maiusc in più.
Ciao,
Ricky
Newsgroup: it.comp.lang.c
Titolo: test

 
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   < 
http://giovanni.homelinux.net/
 >

 Giovanni
(faccio una prova anch'io)

Newsgroup: it.comp.lang.c
Titolo: link di librerie con gcc

Salve a tutti, dopo un pò di tempo non riesco più ad evitare questo problema
per cui mi è necessarioa risolverlo, ...ma non capisco da cosa è dovuto. In
pratica ho un progetto composto da 3 librerie mie pù una serie di librerie
più o meno di terze parti; l'ambiente è unix (prima AIX ed adesso linux) ed
utilizzo il gcc.
Praticamente cosa succede...la definizione dei -l per il linking se indico
le librerie e basta non funziona nulla (errori a profusione), se invece
incomincio a scrivere più e più volte i nomi delle librerie in un ordine
trovato empiricamente tutto funziona. Non riesco a capire come risolvere
questo problema, anche perchè non capisco nemmeno quale logica segue il
linker ...se c'è in una libreria cosa conta se gli cambio posizione???
grazie

 puo` solo trovarlo in quelle che seguono.
Confermo, e' cosi' per gcc, questioni di performance. Anyway: 
it.comp.os.linux.development.
-- 
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: Eseguire un applicazione da un'altra applicazione

Ciao.
Come faccio a lanciare un programma da un altro programma scritto in C,
in ambiente Linux (quindi niente MFC)? Ovvero come implemento
ShellExecute sotto Linux?
Grazie,
Nico
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 ShellExecute sotto Linux?
  Due possibilita':
  1) lanciare un nuovo processo:
     stdlib.h ---> funzione int system(const char *cmd)
  2) sostituire un processo all'attuale in esecuzione:
     unistd.h ---> famiglia di funzioni int execp...
     (dai un'occhiata all'header in questione)
     (attento alla seconda opzione: se l'esecuzione delle funzione
      va a buon fine, il controllo non tornera' mai al processo
      lanciante).
  Ciao 


Grazie! Il primo metodo funziona perfettamente.
Ciao,
nico
