mii-community/UsenetArchiveIT-conversations huggingface dataset:
Newsgroup: it.comp.lang.c
Titolo: Stringa in "overflow"...?

Ciao,
mentre provavo a giocherellare un po con il c ho incappato in un dubbio:
Dichiarando una stringa come vettore di char[100] non mi viene permesso, a
causa di errori in fase di esecuzione di superare i 255 elementi: è
possibile dichiarare stringhe piu' lunghe?
Se non fosse possibile ed io avessi bisogno di memorizzare una serie di
caratteri che superano di gran lunga i 255 come dovrei comportarmi?
Ciao Grazie.

 wrote in message
news:3c90...@news.cis.it...

Sperando di non dire cazzate anche oggi :-)
C'e' qualche problema a definire
   char longStr[255];
se ti serve una stringa di 255 caratteri?
Forse il tuo problema e' avere una stringa che si ridimensioni
automaticamente come si supera il limite?
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 caratteri che superano di gran lunga i 255 come dovrei comportarmi?
puoi usare una malloc affinché ti crei un array delle dimensioni necessarie

possibile dichiarare stringhe piu' lunghe?
Le puoi dichiarare lunghe quanto vuoi, limiti di memoria e di
architettura della macchina permettendo.
Puoi anche dichiarare char stringa[60000] se lo desideri.
Se dichiari un vettore di 100 char, e poi scrivi 255 char, vorrà dire
che andrai a scrivere 155 char non si sa dove, il che non è una bella
cosa.
Devi controllare tu l'overflow del vettore, il C non se ne occupa
direttamente.
-- 
Cordiali saluti
  Artemio

Newsgroup: it.comp.lang.c
Titolo: FFT un po' complicata

Il mio problema e' creare una FFT su 6912 campioni:
si puo' fare una FFT perche' 6912=3^3*2^8 ma non riesco proprio a
venircene fuori,soprattutto per quanto riguarda il problema del ordinamento
degli indici. C'e' qualcuno che mi puo' aiutare?

 wrote:

Scusa ma lo zero-padding fino a 8192 ti fa schifo?
Puoi almeno usare radix2 o 4 e quindi sfruttare i soliti algoritmi.
Ciao Carlo Giovannucci

Newsgroup: it.comp.lang.c
Titolo: Posizione di una parola in una stringa?

Esiste un comando tipo il pos del pascal in c?
devo vedere se in una stringa c'e' una certa parola e se si in che
posizione.
Grazie
--------------------------------------------------
Brayan Fix Kirys Solfory
E-Mail: 
Ki...@technologist.com
 
For Free Software go to: 
http://Kiryssoft.cjb.net

 posizione.
Penso che la funzione strstr() possa fare al caso tuo.
EMG

posizione.
Pos in pascal e' una funzione, non un comando.
In C esiste la funzione strstr().
Una versione modificata di pos pascal in C puo' essere :
int cpos( const char *substr, const char *string )
{
    char *p ;
    return (p = strstr( string, substr )) ?
           (p - string) :
           -1 ;
}
--
Andrea Laforgia (
andrea_...@bigfoot.com
)
--------------------------------------------------------------
"Partire e' un po' morire e morire e' partire un po' troppo !"
--------------------------------------------------------------
Newsgroup: it.comp.lang.c
Titolo: games

Ciao a tutti, sarei felice se qualcuno mi spedisse dei programmi in C
che simulino dei videogame anni 80.Sò di chiedere troppo ma se qualcuno
dovesse averli può anche aggiungerci delle spiegazioni in italiano

 dovesse averli può anche aggiungerci delle spiegazioni in italiano
Rispondo solo per aiutarti ad ottenere cio' che vuoi....
- per che O.S. ? (solaris, irix, linux, mac os, windows, dos, etc...)
- qualche preferenza di libreria grafica?
- tu che os hai?
- tu che compilatore usi?
- quali librerie grafiche hai a disposizione e/o vuoi imparare.
Tommy

Newsgroup: it.comp.lang.c
Titolo: comunicazioni su seriale

Come posso far comunicare due programmi che girano su due macchine
differenti attraverso  la porta seriale?
ciao
gianni

differenti attraverso  la porta seriale?
Il linguaggio C non specifica un modo per farlo.
Sotto Unix č piuttosto facile farlo, ma qualcosa mi dice che tu sei
sotto Windows, quindi ti consiglio di rivolgerti a un gruppo che si
occupa del tuo sistema operativo.
by LjL
ljl...@tiscalinet.it

 Sotto Unix è piuttosto facile farlo, ma qualcosa mi dice che tu sei


 Se non è di troppo disturbo potresti consigliarmene uno per favore.
it.comp.programmare.win32
-- 
Rhymes (rhy...@NOSPAMmyself.com)
linux registered user #219707
linux registered machine #172395

Newsgroup: it.comp.lang.c
Titolo: utilita' di memcpy??

Salve a tutti,
    scusate la banalita' del mio post, ma vorrei chiedervi quando si usa la 
memcpy? cioe' per quale motivo dovrei copiare la memoria? Non ne comprendo 
l'utilita' scusate! puo' forse tornarmi utile con i puntatori? infondo sono 
allocati in memoria. Oppure nello specifico per programmare dispositivi a 
basso livello come microprocessori/microcontrollori?
grazie 1000!
Dade 

Dade ha scritto:

La prima cosa che mi viene in mente e' copiare una struttura o un array 
completo su un'altro.
Poi ci possono essere mille altri usi.
-- 
---
Ciao
Giuseppe
-----------------------------------
http://digilander.libero.it/nokappa


E' una funziona dalla indubbia utilita', pensa agli utilizzi sulle liste 
oppure a alla facilita' con cui puoi copiare porzioni di array evitando 
foronzoli.
Newsgroup: it.comp.lang.c
Titolo: puntatore a void: void *p;

non ho capito a che cosa serve, cosa ci si può/deve fare, come si
utilizza.
qualcuno me lo può spiegare? 
grazie x l'attenzione
ciao,
-- 
gabriele

utilizza.
non ho capito nemmeno questo:
il prototipo di malloc() è:
void * malloc(tipo restituito da sizeof);
quindi dovrebbe restituire un puntatore a void.
tuttavia se faccio:
int *p;
p = malloc(sizeof(int));
funziona ugualmente. perché?
-- 
Gabriele

 funziona ugualmente. perché?
Fara' un casting automatico, bho :)

utilizza
Credo che l'utilità sia proprio quella di poter dichiarare un puntatore a un
tipo di dato non conosciuto a priori.
Corregetemi se sbaglio...
Ciao ciao!

>utilizza
Spero di essere stato chiaro
-- 
{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}-{}
SunGray aka Gabriele Lana
contact me @ sungray@tiscalinet
See you space cowboy ...

viene fatto il typechecking in fase di assegnamento.
Quasi giusto... il type checking lo fa' e come, solo che da void * a
qualsiasi tipo c'e' un cast implicito, funziona solo con il void *.
Mi aggangio qui per dire una cosa.
Il void * lo capisci meglio se lo pensi in tema di puntatore generico.
Punta a qualsiasi cosa e nel passaggio da TYPE * a void * non c'e'
perdita di informazioni. Ti torna utile quando devi allocare memoria,
quando devi implementare un algoritmo che deve funzionare su qualsiasi
tipo di dato o quando devi implementare un contenitore generico
(quello che in C++ chiami template, anche se e' leggermente diverso il
concetto).
Una volta usavi il char * per questo scopo e poi al ritorno castavi al
tipo interessato, ma e' un po' un "lurido hack". Usare il void *
logicamente piu' corretto, oltre che sicuro: un void * non lo
deferenzi, un char * si e i risultati possono essere (leggi: quasi
certamente sono) dannosi :)
-- 
Mox
"Trust the programmer."
"Don't prevent the programmer from doing what needs to be done."
"Keep the language small and simple."
"Provide only one way to do an operation."

 qualsiasi tipo c'e' un cast implicito, funziona solo con il void *.
[cut]
Sorry, chiedo venia per le imprecisioni. Ho controllato sullo standard, 
effettivamente e' cosi'. La memoria non e' piu' quella di una volta :-(


On Wed, 17 Apr 2002 09:35:27 +0200, Gabriele_ <a...@me.com.invalid>
wrote:
[cut]
grazie a tutti
ciao

Newsgroup: it.comp.lang.c
Titolo: come faccio a...

salve sono nuovo e sono molto pivello in c!
volevo sapere come si fa a non far chiudere la finsetra dopo l'esecuzione 
dle programma stesso.
grazie mille in anticipo 

 ha scritto nel messaggio 
news:6coPf.20669$ou2....@tornado.fastwebnet.it...

Newsgroup: it.comp.lang.c
Titolo: Recuperare contatti da messenger microsoft

Salve a tutti,
vorrei fare un programmino che permetta di recuperare i contatti di 
messenger; l'obbiettivo sarebbe che un utente inserisce il suo nome 
utente e la sua password e il programma recupera i suoi contatti. ho 
cercato in rete, ma non riesco a trovare niente di utile. Non vorrei 
passare per le api di microsoft, vorrei fare qualcosa tipo pidgin, un 
messenger multipiattaforma per linux. ho scaricato il sorgente, ma mi 
sembra troppo "ricco" di funzioni per le mie capacità.
Potete aiutarmi?

utente e la sua password e il programma recupera i suoi contatti.
Tu fai un programma del genere ed io sconsiglierò a tutti di usarlo.
Non si chiede la password di un sistema che non è il tuo.
Inoltre, sei OT. Imposto il f/up su it.comp.programmare

Newsgroup: it.comp.lang.c
Titolo: Compilatore linguaggio C

Salve a tutti,
sto cercando un compilatore per Win7 semplice da usare, ho provato 
CodeBlocks ma non capisco come funziona.
Qualche suggerimento ?
Grazie.
 


Premetto che non uso Windows da anni, per cui magari son cambiate molte cose..
 
Non ti scrivo pro e contro, visto che sicuramente avrai una vagonata di
suggerimenti e probabilmente partirà qualche flame :D
 
In ordine di popolarità, direi:
- Visual Studio (che però non contiente un /vero/ compilatore C)
- Eclipse con CDT
- CodeBlocks (dov'è che trovi problemi?)
- mingw
- dev c++
 
E, naturalmente, non posso non chiederti cosa ci devi sviluppare, perché a
seconda del progetto probabilmente alcune scelte sono più appropriate di
altre.
 
Ciao!


se hai installato la versione giusta funziona outofthebox.
 
Ciao Jack
-- 
Yoda of Borg am I! Assimilated shall you be! Futile resistance is, hmm?

 - Visual Studio (che però non contiente un /vero/ compilatore C)
 
?
 
 
 
-- 
By ZeD

 
 
MS ha espressamente detto che non vuole fare sforzi per supportare C99, visto
che la sua base d'utenza ritiene che gli sviluppi in favore dei nuovi standard
C++ abbiano la priorità.
 
Ma questo da sempre: VS è sempre stato per C++/C#/.NET etc. - su Win i
programmatori C son veramente pochi.
 
Ciao!


In realtà, adesso come adesso, Visual Studio 2013 supporta
buona parte del C99 :) (sarà perchè il C++11 parla anche lui
un po' in C99?). Ciao!
 
http://blogs.msdn.com/b/vcblog/archive/2013/06/28/c-11-14-stl-features-fixes-and-breaking-changes-in-vs-2013.aspx
 
 
http://blogs.msdn.com/b/vcblog/archive/2013/07/19/c99-library-support-in-visual-studio-2013.aspx
 
 
 
-- 
Vincenzo Mercuri


Oltre a quelli già indicati potresti provare LCC:
 
http://www.cs.virginia.edu/~lcc-win32/
 
 
Saluti
 
-- 
Paolo "Spino"
Newsgroup: it.comp.lang.c
Titolo: Problema con i puntatori.

 wrote:
[ snip ]
Ti posto un esempio.
------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
typedef struct {
        char car;
        int num;
} dati;
int funz(dati ***, int);
int main()
{
        dati **par;
        int i, len = 5;
        if (funz(&par, len)) {
                for (i = 0; i < len; i++)
                        printf("%02d  %c\n",
                               par[i]->num, par[i]->car);
        	for(i = 0; i < len; i++)
                	free(par[i]);
        	free(par);
	}
        return 0;
}
int funz(dati *** v, int n)
{
        dati **p;
        char c = 'a';
        int i;
        p = malloc(n * sizeof(dati *));
        if (p == NULL) return 0;
        for (i = 0; i < n; i++, c++) {
                p[i] = malloc(sizeof(dati));
                if (p[i] == NULL) return 0;
                p[i]->car = c;
                p[i]->num = c - 'a' + 1;
        }
        *v = p;
        return 1;
}
------------------------------------------------------ 
Ciao ciao,
Andrea
-- 
"...Unix, MS-DOS, and Windows NT (also known as the Good, the Bad, and 
 the Ugly)."
(by Matt Welsh)

}
Il tuo codice e' ridondante per due motivi :
1. Non c'e' bisogno di allocare il vettore di strutture con p
2. Non c'e' bisogno di allocare memoria per il puntatore con v = ...
*v e' il puntatore che vuoi rendere vettore di strutture.
La procedura giusta e' quindi :
#include <stdio.h>
#include <stdlib.h>
typedef struct { int x ; } dati ;
int funz( dati **v )
{
    *v = malloc( 5 * sizeof( dati ) ) ;
 
    (*v)[0].x = 15 ;    /* assegnazioni */
    (*v)[1].x = -2 ;
}
main()
{
    dati * p ;
    funz( &p ) ;
    printf( "%d\n", p[1].x ) ;
}
Andrea Laforgia (
andrea_...@bigfoot.com
)
-----------------------------------------------------
There is nothing better for understanding a kangaroo
than seeing it jump.
-----------------------------------------------------

Non ho capito il listato nel corpo di funz : var da dove è uscita? e poi
allochi la dimensione di un puntatore non della struttura.... Comunque così
dovrebbe funzionare:
typedef struct {int a; int b;} dati;
/* Io la dichiarerei inline... */
void funz(dati **punt, int numero)
{
  *punt = malloc(numero * sizeof(dati));       // potrebbe essere anche:
numero * sizeof(**punt)
};
int main()
{
  dati *miodato;
  funz(&miodato, 3);    // Ti ritrovi un vettore di 3 elementi
  miodato[0].a = 13;
  printf("%d", miodato[2].b);
  ecc.....
  return 0;
};
Se vuoi inizializzare il puntatore all'interno di main non hai bisogno più
di passare il puntatore per riferimento (data **) ma basta fare:
int main()
{
  data * miodato = malloc(3 * sizeof(data));   // Alloco un vettore di 3
elementi
  ecc.....
  return 0;
};
Spero di esserti stato d'aiuto
Ciao, Giuseppe
Newsgroup: it.comp.lang.c
Titolo: Compilatore

Sono un novellino di C,
Che compilatore C mi consigliate? possibilmente ne preferisco uno per
Windows.
....Ah....altro requisito....che sia pure free magari!
Grazie,
Sean

you wrote :

Interni in pelle ?
L'unico free che conosco e' il DJGPP, che pero' gira sotto DOS :
www.delorie.com/djgpp/
--
Andrea Laforgia
andrea_...@bigfoot.com

 Esistono anche dei compilatori c++ che credo compilino anche sorgenti c
(non te lo garantisco perché li ho sempre usati per c++) e girano sotto
windoz
e sono Lcc e Cignus. Guarda un po' te se ti possono servire.... trovi i link
per scaricarli sul sito 
www.programmazione.it
tuttavia il DJGPP é ottimo, semplice, efficace si installa in un niente e
piace a tutti quelli che contano il questo NG.

Che compilatore C mi consigliate? 
Se pochi soldi trovi lcc su
www.cs.virginia.edu/~lcc-win32
Tempo fa la Borland regalava il C Builder 1 (che a me piace
pochissimo). A basso prezzo trovi il Turbo C sempre Borland (che per
un tempo breve si e' chiamata Imprise). Non mi ricordo se e' gia' a 32
bit.
La Microsoft regala con il libro Learn VC il compilatore 1.52. E' a 16
bit, ma per iniziare puo' andar bene. Il libro non so se e' in vendita
ancora, ma internet e' potente.
Se sei uno studente puo' comprare a poco prezzo il Microsoft VC 6
insieme al VB 6. Con quel prodotto non sei autorizzato legalmente a
trarre lucro dal tuo lavoro. Sono versioni che l'utente garantisce di
usare a puro scopo didattico.
-------------------------------------------------------
Tieni per te il Papero se vuoi la mia email
Sito Papero -> 
http://utenti.tripod.it/papero

Newsgroup: it.comp.lang.c
Titolo: come si usa switch e case??

Grazie a tutti.
Ciao :-) Roberto

Ciao :-) Roberto
switch( cervello )
{
      case MOLTO     : puts( "uso Linux" ) ;
                       break ;
      case POCO      : 
      case COSTRETTO : puts( "uso Windows" ) ;
                       break ;
}
Un manuale ? no ? ;)
Newsgroup: it.comp.lang.c
Titolo: R: [REQ]:Compilatore GNU C/C++ per DOS

sul sito
http://www.bloodshed.nu/devc.html
si può scaricae (7 MB!!)
Dev-C++ 3.8 per 95/98/NT, un compilatore C++ freeware
basato sull'ottimo Mingw32 di Mumit Khan (un porting per Win32 di GCC).
Dev-C++ è sostanzialmente un IDE per questo ambiente ed è disponibile il
download anche dei sorgenti Delphi. Il file include ovviamente anche il
compilatore Mingw.
Metti in conto che GCC è uno dei compilatori più
performanti e aderenti allo standard al momento... volate a scaricarlo.
P.S. si possono cercare in rete mirror del file, p.e. con
http://ftpsearch.lycos.com
 che si chiama devcpp38.zip.
Lello Mele.

 wrote:
: Metti in conto che GCC č uno dei compilatori pių
: performanti e aderenti allo standard al momento... volate a scaricarlo.
Io amo molto GCC, e' l'unico compilatore che uso, pero' devo ammettere
che non concordo sulle performance. Sul pentium il GCC non e' molto veloce,
fa un po' meglio il PGCC ma neanche questo e' entusiasmante. I problemi
vengono dal fatto che essendo un compilatore multi piattaforma e non
solo per Intel alcune ottimizzazioni per Intel non sono state curate in
maniera particolare.
Per il resto il GCC e' meraviglioso e rimane sufficientemente veloce.
antirez

 performanti e aderenti allo standard al momento... volate a scaricarlo.


Newsgroup: it.comp.lang.c
Titolo: AIUTOOO!!! DPMI a 32 bit !

Sono in possesso del pacchetto C/C++ Borland 4.52 e sto iniziando la
programmazione in modalita' protetta a 32 bit con modello di memoria flat.
Mi sono accorto che i puntatori in questa modalita' non misurano 48 bit (16
per il selettore e 32 per l' offset), ma solo 32 bit (considerano quindi
solo l' offset). Ho letto che con il modello flat la memoria viene vista
come un unico segmento di 4GB, ma allora come faccio ad utilizzare i
servizi del DPMI che richiedono il selettore in BX ? A proposito, i servizi
dell' int 31h (come quelli dell' int 21h e int 10h che secondo i manuali
del power pack dovrebbero essere supportate in modalita' protetta.....cio'
mi risulta vero solo per la modalita' protetta a 16 bit) mi bloccano il
programma.
Qualcuno sa dirmi qualcosa ?
Grazie !

Premetto che non dovrei essere io a risponderti.....visto che di DMPI non ne
capisco nulla. Comunque volevo segnalarti un buon articolo sull'argomento
che è stato pubblicato su Computer Programming n.63 (Novembre 97) in cui
oltre alle spiegazioni del caso, puoi travare anche un esempio completo di
come attivare, utilizzare, e teminare il modo DMPI
Ciao Andrea
_____________________________________
Email: sostituire "NOSPAM" con "flashnet"
Email: replace "NOSPAM" with "flashnet"
Simone Tromboni ha scritto nel messaggio
<01bdc9bd$14d139e0$168bd8d4@squallid>...

Newsgroup: it.comp.lang.c
Titolo: Compilatore C/C++

Dove posso trovare un compilatore ANSI C/C++
(per DOS/WINDOWS)? Io ho il borland Turbo C++ ma avrei
bisogno di un compilatore che supporti namespace, ge-
stione delle eccezioni etc. Grazie per l'aiuto.
Luisa

(per DOS/WINDOWS)? 
www.delorie.com/djgpp/
compilatore C/C++ per DOS a 32 bit, in modalita' protetta.
www.borland.com
cerca il BCC 5.5 liberamente scaricabile.

--------
Grazie Andrea, le tue indicazioni sono state utilissime.
Luisa

scusa, non l'ho trovato... potresti dirmi esattamente i passi da compiere
sul sito borland?
il dgjpp è stabile o è solo beta?

scusa ancora, è libero libero (anche per aziende) oppure è solo per uso
didattico o è una demo?
grazie

il dgjpp č stabile o č solo beta?
E' stabile, ma e' in continuo aggiornamento, chiaramente.

didattico o č una demo?
Quel dei due ?

sul sito borland?
Se mi ricordo bene...
1) ti devi registrare.
2) arriva l'email con la pass
3) entri nella sez. download
4) ti identifichi con la pass
5) segui i passi 
6) scarichi il file
La prima volta mi ricordo di avere incontrato grossi problemi perche'
uno dei punti da seguire era errato....mi sa che poi l'hanno corretto.
ciao
Bun]{er
-> Home: 
http://bunkersite.cjb.net
-> E-mail: scorp...@NOSPAMtin.it

Newsgroup: it.comp.lang.c
Titolo: Manuale Tecnico C

...e magari anche C++.
Qualcuno a dirmi dove reperire i lsuddetto manuale preferibilmente in 
italiano?

Ciao,
    per il C++ puoi scaricare dall'area Download (o visionare on-line
dall'area Tutorial) l'ottimo corso di Paolo Marotta che trovi su
http://welcome.to/C++Warriors
Alla prox :-)
Marco Abis
http://welcome.to/C++Warriors
 interamente dedicato al C/C++
ca...@technologist.com
CyberZ ha scritto nel messaggio ...


 
http://welcome.to/C++Warriors
Si grazie,ma intendevo il manuale tecnico :-)
Vorrei conoscere i dettagli per accedere direttamente alle routine del 
bios che accedono al disco tramite il C(potrei frlo in assembly,ma vorrei 
farlo in C:)A tale prorposito,e per altro,so che esiste un manuale 
tecnico del C,ma e' gia piu' di un anno che lo cerco senza trovarlo.
Ciao!

 Mailgate.ORG is maintained online by Dario Centofanti
--
Posted from 
mail.asianet.it
 [195.122.64.137]
via Mailgate.ORG Server - 
http://www.mailgate.org

Newsgroup: it.comp.lang.c
Titolo: modalità accesso ad un file binario

Salve programmatori
qualcuno di buona volontï¿œ potrebbe rispondere ad un mio quesito?
le seguenti modalitï¿œ r - w - a  sono cosa fanno
anche le seguenti    rb - wb - ab
ma le seguenti? rb+   wb+   ab+
mille grazie
ciao

 ciao
http://linux.die.net/man/3/fopen
Ciao!
Newsgroup: it.comp.lang.c
Titolo: Modalita' di apertura di un file: "r"vs "r++

Ciao ragazzi,
 c'e' qualcuno che una volta per tutte e' in grado
 di spiegarmi il che differenza c'e' tra "r" e "r+"?
 quando apro un file in lettura?
 ciao 
  Enrico

 wrote in message
news:3E882C95...@fatti.com

La prima modalita' apre il file esclusivamente in lettura, la
seconda modalita' aprei il file in lettura/scrittura.
Se il file non esiste la chiamata fallisce.
Attenzione anche "w+" apre un file in lettura/scrittura, ma se
il file esiste distrugge i suo contenuto.
HTH
C:\>iao Angelo
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

  di spiegarmi il che differenza c'e' tra "r" e "r+"?
"r" apre solo in lettura, "r+" in lettura/scrittura. In entrambi i casi
il file deve già esistere.
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
Newsgroup: it.comp.lang.c
Titolo: Operatori bit a bit


      Linux user :   #272373
      Linux machine: #155521

 Ciao e grazie.
Supponi di avere
unsigned char x=65, y=129;
L'architettura e il compilatore di riferimento sono tali da far occupare ad
un "unsigned int" uno spazio pari a 8 bit, quindi i valori vanno da 0 a 255.
in binario:
x = 01000001  (otto cifre perche' occupa otto bit)
y = 10000001  (se occupasse 16 bit bisognerebbe usare 16 cifre)
Gli operatori bit-a-bit (o bitwise) operano su ogni bit, cioe' (visualizza
questa email con un carattere a spaziatura fissa):
01000001 &  (operatore AND-bitwise)
10000001 =
--------
00000001 (in decimale 1)
cioe' (65 & 129) == 1.
Vediamo con | (OR):
01000001 |
10000001 =
--------
11000001 (in decimale 193)
cioe' (65 | 129) == 193
Se avessi usato "signed char" avresti dovuto considerare il complemento a
due, ma questo e' un altro discorso.
--
"Siamo come un bambino piccolo che entra in una grande biblioteca,
le cui pareti sono coperte sino al soffitto di libri in molte
lingue diverse... Il bambino non capisce le lingue in cui sono
scritti. Egli nota tuttavia nella disposizione dei libri un piano
ben preciso, un ordine misterioso che non comprende, ma sospetta,
benché confusamente"
(A. Einstein)

Avrei bisogno di accedere al floppy in maniera fisica. Come posso fare a
leggere il disketto (interamente) sotto windows e/o linux in binario?
In pratica dovrei copiare un dischetto con settori (apparentementi
danneggiati). Ho pensato di farlo a basso livello utilizzando i bit!
Sotto linux utilizzando il comando dd if=/dev/fd0 of=/tmp/imgfloppy mi
si blocca dandomi errori...
Insomma come si può fare un copiatore/scrittore di floppy leggendo i
singoli bit?
Grazie
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 
Spero di averti aiutato,
						Dino
-- 
int main(void){int s=56,i='z'-'a'+1,j;char*q="kl BIcNBFr.NKEzjwCIxNJC",p[
s];for(j=0;j<i;j++)p[j]='A'+j,p[j+i]='a'+j;strcpy(&p[j+i],". \n");for(i=
28;*q;putchar(p[i]))if((i+=(char*)strchr(p,*q++)-p)>=s)i-=s-1;return 0;}

 Ciao e grazie.
Gli operatori bit a bit ti danno l'efficenza di un controllo ad un
livello molto basso manipolando la variabile nella sua parte +
interna...
Queste manipolazioni inoltre sono velocissime perciò ti permettono di
ottimizzare il codice per specifiche operazioni...
bye duido


Newsgroup: it.comp.lang.c
Titolo: <stdio.h>

Dove posso trovare la documentazione della libreria <stdio.h> ?
Grazie

>Dove posso trovare la documentazione della libreria <stdio.h> ?
Kernigan, Ritchie - "Linguaggio C, ansi C - seconda edizione"
Per il resto esiste sempre google :)  Esistono i man di unix (se non
hai unix li consulti in html da 
http://www.rt.com/man
) e sui
compilatori windows esiste una documentazione apposta.
Trovi sul sito del DJGPP (
www.delorie.com
) una documentazione
schematica di tutte le funzioni che ti fornisce e tra queste anche
quelle della stdio.h.
Mox :)
Newsgroup: it.comp.lang.c
Titolo: Comprimere stringa - numeri...

scusate se sono OT..
se possibile vorrei comprimere una stringa contenente solo numeri punti e
virgole tipo:
2588.5,85425,0525,4555.5566,268.56,546546.64697,
 non voglio usare moduli ecc.. (devo poi magari fare l'inverso con altri
linguaggi)
vorrei proprio un algoritmo per comprimere/decomprimere e nello stesso tempo
magari nascondere i dati
non cerco cose complicate!
Qualcuno ha idea di come si potrebbe fare una cosa simile?
grazie
-----------------

 i dati non cerco cose complicate!
  Cerca sulla Rete o su qualche libro a proposito dell'algoritmo di
Huffman, prendi una decisione su quale strumento di sviluppo hai
intenzione di usare (hai postato lo stesso identico messaggio anche su
it.comp.lang.perl), cerca di implementarlo in un dato linguaggio e *POI*
torna qui (o su it.comp.lang.perl) a chiedere cio` che non ti e` chiaro.
	Alla prossima,
		Marco

... e su java:)
infatti vorrei farlo in perl e java, il primo dovrebbe comprimere il
secoondo espandere
ma siccome cerco l'algoritmo lo postato ovunque..
cmq grazie per il consiglio "Huffman"


«If the facts don't fit the theory, change the facts.»
(Albert Einstein)
Newsgroup: it.comp.lang.c
Titolo: piccola shell...

ciao...
devo programmare una shell (molto semplice) per linux...
Per il momento il mio programma esegue i comandi anche con parametri....
Il problema è che non riesco a far funzionare il ChangeDir.....
Qualcuno ha un idea????
that's the code (commenti e critiche di qsiasi tipo benaccetti)
#include <stdlib.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/uio.h>
#include <unistd.h>
#include <string.h>
char* argom[255];
char* thecommand;
extern char** environ;
int Readln()
{  // Legge la riga dal Term, la divide e ritorna il n° di parametri
  char chr;
  char* buffyword;
  char* InpStr = (char*)malloc(255*sizeof(char));
  int i=0;
  sprintf(InpStr,"");
  printf("%c[1m%c[36m$%c[m ",27,27,27);   // IL PROMPT
  chr=getchar();
  while (chr!='\n')   file://Legge la str
    {
      sprintf(InpStr,"%s%c",InpStr,chr);
      chr=getchar();
    }
  buffyword = strtok(InpStr," ");
  do     // Divide la str
    {
      argom[i]=buffyword;
      i++;
      buffyword = strtok(NULL," ");
    }
  while (buffyword!=NULL);
  return i;
}
int main()   // =========== THE MAIN ===============
{
  int n,i;
  pid_t pid;
while(1)
{  
   n=Readln();
   if ((strcmp(argom[0],"exit")==0)||(strcmp(argom[0],"bye")==0)) exit(0);
   else if (strcmp(argom[0],"cd")==0) system(("cd %s",argom[1]));
   else
   {
   pid = fork();
 
   if (pid==-1)
    { // Fork failed: out of mem or pid slots 
      perror("The fork failed!");
     }
    else if (pid==0)
   { // child
      if(execvp(argom[0],argom)==-1) printf("'%s' non è riconosciuto come comando interno o esterno, un programma eseguibile o un file batch.\n",argom[0]);
      _exit(0);
 }
 
    if (pid>0)
    { // parent
      wait();
      printf("%c[1mPID [%d]%c[m\n",27,pid,27);
      }  
}
}
return 0;
}

   else if (strcmp(argom[0],"cd")==0) system(("cd %s",argom[1]));
Questo non dovrebbe neppure compilare:
int system(char const *cmd);
devi passare solo una stringa, quindi devi prima crearla con sprintf. In
secondo luogo system fork ed esegue il programma indicato (o richiama la
shell). La wd del tuo processo non cambia. Devi usare chdir(2).
ciao
Kronos
-- 
Home: 
http://kronoz.cjb.net
Not an editor command: Wq

grazie... con chdir() funzia...
altro problemz:
io faccio:
if(execvp(argom[0],argom)==-1) printf("'%s' non è riconosciuto come comando
interno o esterno");
ma se nella shell non scrivo nulla o soltato spazi... (che poi equivale a
nulla xche vengono eliminati...)
fa un segmentation fault....
xche?? come faccio???

 if(execvp(argom[0],argom)==-1) printf("'%s' non è riconosciuto come
comando interno o esterno");
 questo da errore se nella mia shell scrivo cose che non sono comandi...
se non scrivo nulla... il vettore char* argom[] é pieno di null.... e quando
lo passo a execvp fa un seg fault...
ho provato a detectare questo usando strcmp ma niente...
nemmeno facendo if (argom[i]==NULL)...
come faccio ?`????????

Eureka.!!... scusate il disturbo....
Newsgroup: it.comp.lang.c
Titolo: guadagna con gli sms

Ciao, se vuoi guadagnare con gli sms seguimi ancora per qualche secondo e ti
spiegerò come fare.
Si tratta di ricevere sul proprio telefono gsm dei brevi sms pubblicitari,
per ogni messaggio ricevuto riceverai un accredito, arrivati a 60.000£
potrai scegliere se farti ricaricare il telefono o farti mandare un assegno.
Se vuoi iscriverti anche tu basta che mi mandi una e-mail con i dati
seguenti, penserò io a iscriverti e ti farò sapere come accedere al sito per
controllare la tua scheda.
DATI NECESSARI PER ISCRIVERSI
Cognome,Nome
Indirizzo, N°,Città,Prov.,CAP
Nato a,Data nascita
Sesso (m/f), Stato Civile, Figli N°
Telefono, Telefono Cellulare, E-mail
Password per accedere al sito
Gestore telefonico (tim, omnitel, wind, blu)
Pagamento tramite (ricarica telefono - assegno circolare)
Quanti messaggi vuoi al giorno (fino a 5-fino a 10-oltre 10)
Se vuoi puoi segnalare anche qualche tuo amico
Nome e Cognome e tel cellulare
Ti assicuro che funziona, piu siamo meglio è!!!!
la mia e-mail è 
roby....@tin.it
ciao

Ciao,
il tuo messaggio e' fuori tema sul newsgroup it.comp.lang.c++ (e su
tutti gli altri ai quali lo hai inviato) ed e' contrario alla
netiquette, in quanto di carattere pubblicitario. Ti informo che ti ho
segnalato al tuo provider come contravventore.
Ciao,
Nicola Musatti

 segnalato al tuo provider come contravventore.
Questa cosa puo` essere fatta da chiunque? (Cioe` se la faccio io sono
credibile o devo avere delle credenziali?)
Come fai a farla? (Cioe` invii una mail con allegato il messaggio del
rompiballe di turno?)

Ciao, Guglielmo.
DGP85 e' molto piu' esperto di me al proposito, e mi correggera' se
sbaglio.
Io faccio cosi':
- Cerco di capire dall'intestazione del messaggio da dove e' partito; ad
esempio con Netscape scegliendo View->Headers->All posso vedere le
intestazioni che normalmente sono nascoste. L'header 'NNTP-Posting-Host'
indica da quale server il messaggio e' entrato nelle news.
- Se l'host e' indicato con l'indirizzo IP ci sono alcune pagine Web
dalle quali puoi ottenere la traduzione, ad es.:
Europa: 
http://www.ripe.net/cgi-bin/whois
America: 
http://www.arin.net/whois/index.html
- Ottenuto il nome simbolico, di solito i provider hanno un utente
convenzionale "abuse@<NomeProvider>" a cui segnalare queste cose. Per
farlo devi fare il forward dell'intero messaggio (perche' possano
analizzarne la provenienza), indicando perche' lo ritieni una
violazione.
Buona caccia!
Nicola

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

Ciao
e possibile utilizzare le librerie wxwidgets con
il linguaggio C.
Grazie

credo di no essendo delle librerie fatte in c++ per il c++ .... però è 
una bella domanda.... perchè nn usare direttamente il c++ cmq ?
Max ha scritto:


ti ringrazio.
Ciao
Newsgroup: it.comp.lang.c
Titolo: Esportazione tabella tramite sql?









Devo esportare una tabella di 
access2000 in un database(access2000) protetto da password


Ho provato con :


 


SELECT Tabella1.* INTO prova IN 
'C:\percorso\database.mdb'[;PWD=password]
FROM Tabella1;


 


Access mi segnala Password non valida.


 


Dove sbaglio??


grazie per ogni eventuale aiuto.


 


Michael







Newsgroup: it.comp.lang.c
Titolo: saperne di più

ciao!
io sono estraneo a questo ng ma vorrei farvi qualche domanda:
vorrei sapere di più sul linguaggio c (vorrei imparare ecco..) ma ho
molti problemi;
ora vi chiedo:
mi hanno consigliato un compilatore (djgpp):
-in che ambiente lavora? (windows o dos?) 
-che differenza c'e tra lavorare su una piattaforma o su un'altra?
-io ho anche trovato il turbo c++ (che lavora in ambiente dos) -va
bene per iniziare?-
[dove posso trovare queste informazioni ..se conoscete qualche sito
dove c'e spieghiegato qualcosa..
GRAZIE!

 wrote in message
news:8dd8fd8b.04030...@posting.google.com...


 questo)
GRAZIE! mi hai dato veramente un gran consiglio!!!!
Grazie mille!!!!
ciao!
emiliano\
Newsgroup: it.comp.lang.c
Titolo: Conceti tipici della OOP in C

Salve,
scusate la domanda "strana" ma, visto che il "Thinking in C++ Vol. 1" di 
Eckel dice, nel capitolo 5:
"However, the use of class in C++ comes close to being an unnecessary
  keyword. It's identical to the struct keyword in absolutely every way
  except one: class defaults to private, whereas struct defaults to
  public."
Mi chiedevo: esiste qualche modo per implementare concetti fondamentali 
della programmazione orientata agli oggetti (ereditarietà, polimorfismo, 
incapsulamento) nel C utilizzando le strutture?
Grazie a tutti :D
	Matteo

 incapsulamento) nel C utilizzando le strutture?
"Object oriented programming with ANSI C"
Quello però è un approccio abbastanza estremo. E` sicuramente possibile
usare un paradigma OO anche con il C, ma ovviamente è più semplice con
il C++ perchè c'è il supporto diretto a livello di linguaggio.
In maniera più "rilassata" rispetto ad OOC posso dire che questa è
un'interfaccia:
struct iface {
        void (*method)(int);
};
e queste sono due implementazioni:
/* A */
void method_a(int a);
/* ctor for A */
struct iface *new_a() {
        struct iface *ret;
        ret = malloc(sizeof(*ret));
        if (ret)
                ret->method = method_a;
        return ret;
}
/* B */
void method_b(int a);
/* ctor for B */
struct iface *new_b() {
        struct iface *ret;
 
        ret = malloc(sizeof(*ret));
        if (ret)
                ret->method = method_b;
 
        return ret;
}
Luca
-- 
Home: 
http://kronoz.cjb.net
Il dottore mi ha detto di smettere di fare cene intime per quattro.
A meno che non ci siamo altre tre persone.

Matteo wrote:
[...]
Rispondo di pancia quindi non criticatemi troppo .... sicuramente non 
hai e non puoi usare il formalismo del c++ in c ( esempio lampante 
l'overloading degli operatori) ma penso che con le struct ed i puntatori 
a funzione .... puoi fare molto ....
Credo inoltre che l'oop sia un fatto di design .... anche in assembler 
puoi ragionare "ad oggetti" ... il linguaggio è uno strumento che ti 
rende + facile la rappresentazione .... ma in C od in pascal, se disegni 
bene una applicazione riesci comunque a crearla utilizzando una serie di 
"oggetti" (in senso logico) diversi... pensa ai vari Handle delle api di 
windows.... alla fine quando fai una CreateProcess .... lui ti ritorna 
qualcosa che è molto simile ad un oggetto processo, solo che è un 
puntatore ad una struttura C ... ma logicamente...sempre quello  oggetto 
è ...
Se ho scritto puttanate .... sorry :)

     Matteo
Si.
Qui c'e` un esempio per incapsulamento e ereditarita`.
http://www.quantum-leaps.com/devzone/Recipe_SimpleOOC.pdf
Per il polimorfismo e` piu` complicato ma e` possibile.
Ciao,
Cesare
Newsgroup: it.comp.lang.c
Titolo: dubbi su listato c ricerca file

qualche giorno fa ho ricevuto un listato in c (funzionante) che ricerca
tutti i file contenuti nelle cartelle e sottocartelle di un determinato
path. Alcune righe però non mi sono comprensibili: ad esempio
"p[strlen(p)-3]='\0';" a che cosa serve anticipare la fine di una
stringa p che rappresenta il path? E poi "!FindNextFile (hFind,&wfd))"
che cosa significa wfd? Inoltre, non riesco a rimuovere i file dal
disco con il comando remove("path\nomefile"). Esiste qualche altro
comando?

ducenis ha scritto:

...ma voi che chiedete a questo ng... siete tutti parenti e amici che vi 
passate poi i listati? :-)
http://groups.google.it/group/it.comp.lang.c/browse_thread/thread/fb3687965447a0b4/ab5a56c77380729c#ab5a56c77380729c
(l'ho riconosciuto da: p[strlen(p)-3]='\0' :-) )
-- 
Cybertoldo
Per rispondermi via email, sostituisci moc.liamg con 
gmail.com

(l'ho riconosciuto da: p[strlen(p)-3]='\0' :-) )
Il mio codice!!! Sono bollato a vita! :°(

Newsgroup: it.comp.lang.c
Titolo: ping IN C

salve a tutti
qualcuno sa scrivere un piccolo prog in C
che faccia un ping tra 2 macchine?
grazie!    per risposte scrivere a
ba...@mbox.mynet.it
--
Posted from 
ro...@gauss.mynet.it
 [194.184.92.11]
via Mailgate.ORG Server - 
http://www.mailgate.org

Ciao
un anno fa ho scritto il prog che ti interessa......ma scusa puoi sempre
scaricarti i sorgenti di un ping del linux o del BSD.....
P.S.
Sapevate che la Sun distribuisce gratuitamente i sorgenti del solaris a
scopo di studio.......
Dralbert


Newsgroup: it.comp.lang.c
Titolo: problema struttura

Salve,
se io ho una struttura di questo tipo
typedef struct _list {
struct _list * next;
int x;
} *list;
se voglio dichiarare un array dinamico di struct _list faccio:
list *L=calloc(5,sizeof(list));   o sizeof(struct _list) ?
ora per accedere agli elementi si fa così ?
L[0]->x=qualcosa;
L[1]->x=altracosa;
o devo prima allocarmi con la malloc la memoria per ciascun elemento ?
es: L[0]=malloc(sizeof(list));     oppure sizeof(struct _list) ?
chiaritemi un po' le idee per favore.
grazie 1000.

 L[1]->x=altracosa;
-- 
Mox
"Trust the programmer."
"Don't prevent the programmer from doing what needs to be done."
"Keep the language small and simple."
"Provide only one way to do an operation."

 ora per accedere agli elementi si fa cosě ?


 o devo prima allocarmi con la malloc la memoria per ciascun elemento ?
No, l'hai già fatto.
Avresti dovuto farlo se avessi utilizzato un array di puntatori:
int i;
list **pp;
if(!(pp=calloc(5, sizeof(list*)))) return 1;
for(i=0; i <= 5; i++){
    if(!(*pp=calloc(1, sizeof(list))) return 1;
}
Saluti

 definizione della struttura.
No, scusa, non va bene: 'list' indica un puntatore a  _list. E' giusta la
seconda.

> L[1]->x=altracosa;
C'e' un piccolo errore, o meglio una mancata spiegazione da parte mia.
Se a te serviva solo un array di "struct _list" basta un puntatore a "struct 
_list", quindi per la tua typedef una "list":
    list l = malloc(sizeof(struct _list) * 10)
Pero' in quel caso non ha senso fare 
    L[0]->x=qualcosa
ma devi fare
    L[0].x=qualcosa

Newsgroup: it.comp.lang.c
Titolo: fgets e fine file

Ho una stringa nel seguente formato
titolo|regista|n_copie|n_noleggiate|attore1|attore2|attore3|
dove i nomi degli attori sono opzionali. Ho realizzato questa funzione, ma
non funziona correttamente nel rilevare il fine file. Il codice è il
seguente
 while (fgets(line, sizeof(line), filePtr))
   {
    decodifica_righe_file(line,titolo, nome,
                            &copie, &noleggiate, att1, att2, att3);
      printf("\ntitolo: %s", titolo);
      printf("\nnome: %s", nome);
      printf("\ncopie: %d", copie);
      printf("\nnoleggiate: %d", noleggiate);
      printf("\nattore 1: %s", att1);
      printf("\nattore 2: %s", att2);
      printf("\nattore 3: %s", att3);
      numFilm++;
   }
   printf("\n%d", numFilm);
   return numFilm;
}
// decodifica le righe del file
void decodifica_righe_file(char line[], char titolo[], char nome[],
         int *copiePtr, int *noleggiatePtr,
                           char att1[], char att2[], char att3[])
{
   int assegnazioni;  // numero di assegazioni fatte da sscanf
 assegnazioni = sscanf(line,
        "%[^|] %*c %[^|] %*c %d %*c %d %*c %[^|] %*c %[^|] %*c %[^|]",
                  titolo, nome, &(*copiePtr), &(*noleggiatePtr),
                  att1, att2, att3);
   switch (assegnazioni)
   {
    case 4:
       strcpy(att1, "");
         strcpy(att2, "");
         strcpy(att3, "");
         break;
      case 5:
       strcpy(att2, "");
         strcpy(att3, "");
         break;
      case 6:
       strcpy(att3, "");
         break;
   }
}
mentre il file è così strutturato:
Speed|Jan De Bond|5|0|Keanu Reeves|Sandra Bullock
Guardia del corpo|Mick Jackson|10|3|Kevin Costner|Whitney Houston
I laureati|Leonardo Pieraccioni|5|2|Leonardo Pieraccioni|Maria Grazia
Cucinotta|Gianmarco Tognazzi
Cool Runnings|John Turteltaub|3|1|Jhon Candy
Sapore di mare|Carlo Vanzina|20|4|Angelo Cannavacciuolo|Marina Suma|Isabella
Ferrari
Dove sbaglio? Grazie Maurizio

 titolo|regista|n_copie|n_noleggiate|attore1|attore2|attore3|
Perchè non usi la funzione strtok() visto che sai che il carattere delimitatore 
è "|" quindi utilizzando la funzione strtok() e dandogli come carattere
delimitatore il "|" ti ritrovi come tokens tutti i campi di quella
riga.
Così eviti tutti gli incovenienti di output a cui stai andando incontro
come hai specificato nel post successivo
[cut]
Ciao Max
+-----------------------------------------------------------+
| Secondo alcuni autorevoli testi di tecnica Aeronautica,   |
| il calabrone non può volare, a causa della forma e del    |
| peso del proprio corpo in rapporto alla superficie alare. |
| Ma il calabrone non lo sa e perciò continua a volare.     |
|					     Igor Sikorsky  |
+-----------------------------------------------------------+
Newsgroup: it.comp.lang.c
Titolo: Lettura file di testo

Ciao a tutti,
vorrei riuscire a leggere un file di testo cosi' fatto: Ogni riga e'
semplicemente costituita da un numero, esempio:
3
3
1
0
0
1 ...ecc
ho usato fgets dove ogni volta chiedo di leggere 2 caratteri (il numero
della riga n-esima + \n) ma ottengo o segmentation fault o output
insensati; 
penso sia un problema banale... immagino un probl di puntatori...come al
solito !?!
Grazie, a chiunque mi puo' dare una mano! Questo e' il codice
#include <stdio.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#define BUFFSIZE        10
void error_exit(const char *str) {
        perror(str);
        exit(1);
}
int main(int argc, char *argv[])
{
        FILE    *fstream1;
        int     fd1;
        int     n;
        char    *Xd, *Yd, *a, *b;
        if ( (fstream1 = fopen("./test_file", "r+")) < 0 )
error_exit("fopen error");
        // legge la prima riga e memoriz il risultato in Xd
        if ( ( a = fgets(Xd, 2, fstream1)) == NULL ) error_exit("fgets
error");
 
        // legge la seconda riga e memoriz il risultato in Yd
        if ( ( b = fgets(Yd, 2, fstream1)) == NULL ) error_exit("fgets
error");
        printf("%s %s\n", Xd, Yd);
}

         char    *Xd, *Yd, *a, *b;
Hai allocato lo spazio per i due caratteri (che poi sono tre, dato che 
devi calcolare anche lo '\0' terminatore di stringa)?
-- 
Baci,
Mony

Newsgroup: it.comp.lang.c
Titolo: doc in generale e FAQ del ng

Ci sono in giro documenti, FAQ, manuali in italiano possibilmente che
spiegano molto bene come programmare in C? anche spiegando i socket?
Dove posso trovare le FAQ del newsgroup?
grazie cio
fede

 Dove posso trovare le FAQ del newsgroup?
Le FAQ sono in fase di sviluppo, presto appariranno sul sito
www.programmazione.it
 , per ora le puoi consultare all'indirizzo:
http://digilander.iol.it/shiny77/index.htm
Troverai anche un link ad un corso in italiano.
Per quanto riguarda i socket, questo argomento è platform specific per cui è
Off Topic su questo ng. dovresti rivolgerti a qualche ng specifico tipo
it.comp.programmare.win32 o it.comp.unix
Ciao
--
Marco Coppo
University Of Sheffield

 Dove posso trovare le FAQ del newsgroup?
Le stiamo preparando. Intanto prova su 
www.programmazione.it
.
EMG

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

volevo sapere se vim oppure vi sotto linux erano compilatori per c oppure
c++
grazie
Grafin

c++
Innanzitutto vim non "era" ma "e'" un editor (molto bello).
Non gira solo sotto linux ma su molti di sistemi operativi
(io lo uso anche sotto windows).
Se ti riferisci a con che linguaggio e' stato scritto allora
penso che la risposta sia "C" e non "C++". Nota che un editor
e' qualcosa di completamente diverso e separato rispetto ad
un compilatore. Gli IDE che oggi vanno di moda cercano di
nascondere questa separazione concettuale.
Andrea
--
Andrea Griffini, Programmer
http://www.netservers.com/~agriff
Newsgroup: it.comp.lang.c
Titolo: OPERATORI BIT A BIT

Ma a che servono nella pratica questi operatori? Dopo aver letto e (forse)
capito la loro descrizione...che me ne faccio?
Sarei felice se qualcuno mi illuminasse in merito.
Grazie mille.

 ha scritto nel messaggio
news:9j9ljv$3tq$1...@nreadA.inwind.it...


 vista pratico, certi operatori.
Per lavorare sui bit, tipo per comprimere, criptare etc...
Per lavorare sulle maschere di bits, i flags etc...
Per velocizzare alcune operazioni.
etc....
Davvero tante cose. Pian piano che diventi bravo e pian piano che provi ad
implementare programmi te ne accorgerai ...
Alex

Sarei felice se qualcuno mi illuminasse in merito.
In alcune funzioni del sistema operativo devi testari i singoli bit,
per non parlare dell'accesso a dispositivi hardware.
Tieni presente che non c'e' modo di leggere un singolo bit, devi
leggere almeno un byte, qundi testare i bit all'interno del byte
letto.
ciao, acc.   
a...@libero.it

Newsgroup: it.comp.lang.c
Titolo: problema interessante

ciao ragazzi,
vorrei sapere come faccio a creare un programma che prenda in input una
serie di dieci numeri e in seguito determini e visualizzi il maggiore di
quelli, utilizzando tre variabili:
-contatore (per contare fino a dieci)
-numero (indica il numero corrente)
-pių_grande (il numero pių grande).
Grazie

Ueppala! Ma tu guarda cosa oPminD ha scritto!

leggi numero
piu'_grande = numero
ciclo (da 2 a 10)
  leggi numero
  if (piu'_grande < numero) (piu'_grande = numero)
end
divertiti a scriverlo in c
-- 
ZeD
Io, solo io, sempre io, anche io, nient' altro che io, proprio io

 
<CODE>
int mergemax(int ns[],int p, int r)
{
	int x,y,q;
	if (p<r)
	{
		q=(p+r)/2;
		return (((x=mergemax(ns,p,q))<(y=mergemax(ns,q+1,r)))?y:x);
	}
	else
		return ns[p];
}
</CODE>
Adieu,
-- 
Lestat de Lioncourt                               |          Ciro Mattia Gonano
  JabberID: 
les...@jabber.students.cs.unibo.it
    |    Undergraduate Student in
  ICQ#: 52631406                                  |         Computer Science at
  URL: 
http://www.CS.UniBO.It/~gonano
             |       University of Bologna
            <powered by Linux Slackware 8.1 on Kernel 2.4.18-xfs>