The developers - Torna alla home

(15/03/2011)Comunichiamo a tutti che questo sito dopo ben 4 anni e mezzo di attività chiude. Il sito rimarrà sempre online poiché non ci sembra giusto privare le persone di tutto il lavoro che si è portato avanti in questi anni e che di certo o almeno speriamo sarà di aiuto ancora a qualcuno. Tuttavia il sito non sarà più aggiornato con nuovi articoli e potrebbero essere ignorati i nuovi commenti. Grazie a tutti per averci seguito con passione e averci dato la voglia di costruire tutto questo... forse un giorno ci risentiremo... chissà! Vi lascio con la frase che forse più di tutte a spinto la creazione di questo sito: Il sapere umano appartiene al mondo.

Post Taggati ‘c’

Connettersi ad un database mysql con C:

E’ da un pò di tempo che mi frullava in testa l’idea di potermi interfacciare ad un database mysql tramite il c cosi una di queste sere mi sono imbattuto in questo documento che spiega per filo e per segno l’utilizzo della libreria mysql.h.

La guida è molto ben fatta e ci espone i prototipi di tutte le funzioni e vari esempi su come implementare la connessione a un database, la lettura di una tabella e una query. Non riuscivo per?? a compilare anche seguendo le procedure in modo dettagliato. Poi ho scoperto il perchè: avevo installato il server mysql sulla mia linux-box ma non avevo installato il pacchetto relativo allo sviluppo.

Mi è bastato quindi un:

#sudo apt-get install libmysql++-dev

Dopo di ciò tutto ha funzionato egregiamente.

Be Sociable, Share!

Tag associati: ,

Commenta

[ c ]Funzione di gestione data:

Per vari motivi mi sono trovato nella situazione di dover implementare una funzione in c che una volta ricevuto il puntatore ad una stringa di 11 caratteri dovesse gestirla come una data nel formato gg/mm/aaaa e farne i relativi controlli di consistenza per verificarne l’immssione nella corretta formattazione, verificare se si trattasse di una data veritiera con i dovuti controlli sui mesi e massimo di giorni in ogni mese e naturalmente routine per il controllo degli anni bisetili, controllare se l’anno immesso non sia minore del 1900 ed inoltre che la data non sia nel futuro (cioè la data immessa non sia superiore rispetto a quella di sistema). La funzione restituisce un intero: 1 nel caso tutto sia andato bene, 0 altrimenti (oltre a stampare i dovuti errori differenziati per caso). Non è necessario far acquisire la data prima poiche la funzione si preoccupa dell’acquisizione e una volta terminato tutto ciò fa una copia della data nella stringa passata per riferimento. E’ inoltre presente una funzione copia_stringa utilizzata dalla funzione principale che funge come una specie di substring. Il codice non è molto ottimizzato ma funzionante. Lo metto a disposizione per chi sta cominciando ad imparere il c e magari è alla ricerca di qualche esmepio di implementazione. Il codice è abbastanza commentato e comprensibile… comunque sia non esitate a postare.

Ricordatae di includere le librerie: stdio.h, time.h, ctype.h e string.h

Di seguito il codice:

copia_stringa(char *destinazione, char* inizio, char* fine){
                   int x;
                   for(x = 0;inizio < = fine; x++){
                         destinazione[x] = *inizio++;
                         }
                   destinazione[x] = '\0';
                   }
 
int bisestile(int anno){
    if(anno%400 == 0 || anno%100 != 0 && anno%4 == 0)
                return 1;
    else
                return 0;
} <a href="http://thedevelopers.netsons.org/c-funzione-di-gestione-data/#more-410" class="more-link">Leggi il resto...
Be Sociable, Share!

Tag associati:

Commenta

[c] Gestrire la lunghezza degli array come parametri di funzioni.

Queste 4 righe le voglio scrivere per gente come me che si stanno affacciando alla programmazione in c dopo aver avuto le prime esperienze con linguaggi meno ostici quali ad esempio java e php. Premetto che non sono un esperto di c in quanto sto frequentando un corso universitario proprio nel momento in qui sto scrivendo questi appunti nella speranza di unire l’utile al dilettevole e si sa il tempo è quello che è. Quando ho inziato a imparare c(da pochissimo tempo) avevo alle spalle qualche conoscenza di base di java che credevo mi avrebbe aiutato ma che in realtà almeno nel mio caso mi sta rendendo le cose più difficili del previsto. Ho scoperto molte differenze tra questi linguaggi che erroneamente credevo molto simili. Java maschera molte cose che in c devono essere gestite dal programmatore, ad esempio cose come la deallocazione di pntatori, il controllo sul limite degli array e l’inizializazzione di predefinito delle variabili che in java venivano affidate alla virtual machine e quindi rese trasparenti in c non sono automatizzate bensi è il programmatore che deve prendersi la responsabilità di gestire tutto ciò. Questa maggiore visibilità se da un lato porta più flessibilità e quindi più potenza espressiva al linguaggio dall’altra scoraggia i programmatori alle prime armi come me. Una delle prime difficoltà che ho trovato è gestire gli array come parametri di funzioni. Date le vecchie reminescienze di java non riuscivo all’interno della funzione a stabilere quale fosse la lunghezza dell’array pee magari scorrerlo con un for, in java ero abituato ad utilizzare il metodo length che applicato a un array me ne restituiva il numero di elementi. In c con mio grande sgomento non ho trovato una funzione del genere… la cosa più naturale che mi riusciva pensare era quella di includere come parametro formale anche la dimensione dell’array ma mi sembrava poco elegante. Ho cercato un po in giro e sono venuto a sapere della conoscenza della funzione sizeof() che applicata a un qualsiasi oggetto ne restituisce la dimensione in byte e allora mi sono detto… Leggi il resto…

Be Sociable, Share!

Tag associati:

Commenti (2)

Installare ed usare le OpenGL per il C su Linux

Salve a tutti!!

Da poco mi sono imbattuto nella creazione di piccoli programmi che usufruiscono della grafica tramite le librerie OpenGL…ho riscontrato alcuni problemi che poi ho risolto banalmente ma che, essendo alle prime armi come quasi tutti voi che leggerete questa guida, mi hanno creato parecchi problemi!

Per questo ho deciso di creare questa guida per, fin dove mi è possibile, aiutare altri a risolvere i miei stessi problemi!

Inizio subito con il dirvi che la procedura è molto più semplice di quel che si pensa….basta seguire questi piccoli passi:

1: Per prima cosa bisogna scaricare le librerie OpenGL gratuite (MesaDemos, MesaGLUT e MesaLib) reperibili Qui;

2: Ora scompattate… Leggi il resto…

Be Sociable, Share!

Tag associati: ,

Commenti (4)