Torna indietro   Hardware Upgrade Forum > Software > Programmazione

DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker
Analizziamo nel dettaglio DJI RS 5, l'ultimo arrivato della famiglia Ronin progettato per videomaker solisti e piccoli studi. Tra tracciamento intelligente migliorato e ricarica ultra rapida, scopriamo come questo gimbal eleva la qualità delle produzioni.
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming
AMD Ryzen 7 9850X3D è la nuova CPU gaming di riferimento grazie alla 3D V-Cache di seconda generazione e frequenze fino a 5,6 GHz. Nei test offre prestazioni superiori a 9800X3D e 7800X3D, confermando la leadership AMD nel gaming su PC.
Le soluzioni FSP per il 2026: potenza e IA al centro
Le soluzioni FSP per il 2026: potenza e IA al centro
In occasione del Tech Tour 2025 della European Hardware Association abbiamo incontrato a Taiwan FSP, azienda impegnata nella produzione di alimentatori, chassis e soluzioni di raffreddamento tanto per clienti OEM come a proprio marchio. Potenze sempre più elevate negli alimentatori per far fronte alle necessità delle elaborazioni di intelligenza artificiale.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 12-01-2009, 19:39   #1
-hide-
Senior Member
 
L'Avatar di -hide-
 
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
[C] porting windows-mac

Questo di seguito è il codice di un programma da me realizzato che su windows funziona, ma su mac no.
Cosa devo aggiustare per portarlo su Mac?

Codice:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

#define ELEM 100 // Numero massimo di contatti
#define NCHAR 21 // Numero di caratteri per l'erray

// Definizione della struttura
typedef struct {
					char nome[NCHAR];
					char cognome[NCHAR];
					char telefono[NCHAR];
					char citta[NCHAR];
		       } account;

// Variabili globali
account rubrica[ELEM];
int num_account = 0;

// Prototipi delle funzioni
void InsContatto (char nom[], char cogn[], char tel[], char cit[]);
void ModContatto (char nom[], char cogn[]);
void Cancella (char nom[], char cogn[]);
void Visualizza (char nom[], char cogn[]);

int main()
{ //OPEN main
     int scelta; /* per inserire la scelta del menu' */
     char n[NCHAR]; /* per inserire il nome */
     char m[NCHAR]; /* per inserire il cognome */
     char c[NCHAR]; /* per inserire la citta' */
     char t[NCHAR]; /* per inserire il numero di telefono */
     for (;scelta!= 0;)
     { //OPEN for        
    	  printf ("Rubrica V 1.0\n\n");
          printf ("\t\t  INDEX\n");
          printf ("\t***************************\n");
          printf ("\t* 1 - Inserisci Contatto  *\n");
          printf ("\t* 2 - Modifica Contatto   *\n");
          printf ("\t* 3 - Cancella Contatto   *\n");
          printf ("\t* 4 - Visualizza Contatto *\n");
          printf ("\t*                         *\n");
          printf ("\t* 0 - Esci dal programma  *\n");
          printf ("\t***************************\n\n");
          printf ("Digita: ");
          scanf ("%d", &scelta);
          switch (scelta)
          { //OPEN switch
                 case 0: // Exit
                           break;
                 case 1: // Inserisci contatto 
                           printf ("\nNome: ");
                           fflush (stdin);
                           gets (n);
                           printf ("Cognome: ");
                           fflush (stdin);
                           gets (m);
                           printf ("Telefono: ");
                           fflush (stdin);
                           gets (t);
                           printf ("Citta': ");
                           fflush (stdin);
                           gets (c);
                           printf ("\n");
                           InsContatto(n,m,t,c);
                           break;
                 case 2: // Modifica Contatto
                           printf ("\nNome: ");
                           fflush (stdin);
                           gets (n);
                           printf ("Cognome: ");
                           fflush (stdin);
                           gets (m);
                           ModContatto (n,m);
                           break;
                 case 3: // Cancella
                           printf ("\nNome: ");
                           fflush (stdin);
                           gets (n);
                           printf ("Cognome: ");
                           fflush (stdin);
                           gets (m);
                           Cancella (n,m);
                           break;
                 case 4: // Visualizza
                           printf ("\nNome: ");
                           fflush (stdin);
                           gets (n);
                           printf ("Cognome: ");
                           fflush (stdin);
                           gets (m);
                           Visualizza (n,m);
                           break;
          } //CLOSED switch
    } //CLOSED for
    return 0;
} //CLOSED main

// Definizione delle funzioni
void InsContatto (char nom[], char cogn[], char tel[], char cit[])
{ //OPEN InsContatto
     int i;
     if (num_account == ELEM)
     { //OPEN if
         printf ("Hai raggiunto il limite massimo di contatti\n\n");
         return;
     } //CLOSED if
     for (i=0; i<=num_account; i++)
     { //OPEN for
         if ((strcmp (nom,rubrica[i].nome)==0) && (strcmp (cogn,rubrica[i].cognome)==0))
         { //OPEN if
            printf ("Nome e Cognome utente esistono in memoria\n\n");
            return;
         } //CLOSED if
     } //CLOSED for
     strcpy (rubrica[num_account].nome,nom);
     strcpy (rubrica[num_account].cognome,cogn);
     strcpy (rubrica[num_account].telefono,tel);
     strcpy (rubrica[num_account].citta,cit);
     printf ("\nIl contatto e' stato inserito correttamente\n\n");
     num_account++;
     return;
} //CLOSED InsContatto

void ModContatto (char nom[], char cogn[])
{ //OPEN ModContatto
     int i;
     for (i=0; i<=num_account; i++)
     { //OPEN for
         if ((strcmp (nom,rubrica[i].nome)!=0) && (strcmp (cogn,rubrica[i].cognome)!=0))
         { //OPEN if
            printf ("Il contatto non esiste\n\n");
            return;
         } //CLOSED if
         else
         { //OPEN else
             printf("Nuovo Nome: ");
             fflush (stdin);
             gets (rubrica[i].nome);
             printf("Nuovo Cognome: ");
             fflush (stdin);
             gets (rubrica[i].cognome);
             printf("Nuovo Telefono: ");
             fflush (stdin);
             gets (rubrica[i].telefono);
             printf("Nuova Citta': ");
             fflush (stdin);
             gets (rubrica[i].citta);
             return;
         } //CLOSED else
     } //CLOSED for
} //CLOSED ModContatto

void Cancella (char nom[], char cogn[])
{ //OPEN cancella
     int i;
     for (i=0; i<=num_account; i++)
     { //OPEN for
         if ((strcmp (nom,rubrica[i].nome)!=0) && (strcmp (cogn,rubrica[i].cognome)!=0))
         { //OPEN if
            printf ("Il contatto non esiste\n\n");
            return;
         } //CLOSED if
         else
         { //OPEN else
            rubrica[i].nome[0] ='\0';
            rubrica[i].cognome[0] ='\0';
            rubrica[i].telefono[0] ='\0';
            rubrica[i].citta[0] ='\0';
            printf ("\nContatto cancellato\n\n");
            num_account--;
            return;
         } //CLOSED else
     } //CLOSED for
} //CLOSED Cancella

void Visualizza (char nom[], char cogn[])
{ //OPEN Visualizza
     int i;
     for (i=0; i<=num_account; i++)
     { //OPEN for
         if ((strcmp (nom,rubrica[i].nome)==0) && (strcmp (cogn,rubrica[i].cognome)==0))
         { //OPEN if
            printf ("Il contatto scelto e': \n");
            printf ("\n%s %s\n", rubrica[i].nome, rubrica[i].cognome);
            printf ("%s\n%s\n\n", rubrica[i].telefono, rubrica[i].citta);
            return;
         } //CLOSED if
         else
         { //OPEN else
            printf ("Il contatto non esiste\n\n");
            return;
         } //CLOSED else
     } //CLOSED for
} //CLOSED Visualizza
__________________

PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote
Mobile: Samsung Galaxy Wonder i8150 cm9
LinkedIn
-hide- è offline   Rispondi citando il messaggio o parte di esso
Old 12-01-2009, 20:12   #2
DanieleC88
Senior Member
 
L'Avatar di DanieleC88
 
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
Tutti i gets() sostituiscili con fgets(), tanto per cominciare. Fai conto che gets() non esista.
Poi, togli tutti i fflush(stdin), infine riprova. Se non risolve, spiegati meglio: in che senso "non funziona"?

ciao
__________________

C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai!
DanieleC88 è offline   Rispondi citando il messaggio o parte di esso
Old 12-01-2009, 21:30   #3
Aut0maN
Senior Member
 
L'Avatar di Aut0maN
 
Iscritto dal: Jul 2004
Città: Vicenza
Messaggi: 3832
mi sembra di intravedere uno degli esempi citati nella guida di Fabrizio Ciacchi di html.it che stò avidamente seguendo anch'io
__________________
PSN: raiden_it || Steam: id ||
Aut0maN è offline   Rispondi citando il messaggio o parte di esso
Old 12-01-2009, 22:43   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Aut0maN Guarda i messaggi
mi sembra di intravedere uno degli esempi citati nella guida di Fabrizio Ciacchi di html.it che stò avidamente seguendo anch'io
Se usa fflush su stdin allo siamo freschi
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 12-01-2009, 23:43   #5
-hide-
Senior Member
 
L'Avatar di -hide-
 
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
Quote:
Tutti i gets() sostituiscili con fgets(), tanto per cominciare. Fai conto che gets() non esista.
Poi, togli tutti i fflush(stdin), infine riprova. Se non risolve, spiegati meglio: in che senso "non funziona"?
Non credo cambi molto, perché già una cosa simile l'avevo fatta.
Mi spiego meglio. Quando avvio il programma dal mac la prima istruzione di ogni case, cioè il printf "nome" viene saltata e compare una cosa del genere a schermo

nome: cognome:


da qui in poi funziona regolarmente, ma ormai è andato via una cosa importante del programma.
__________________

PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote
Mobile: Samsung Galaxy Wonder i8150 cm9
LinkedIn
-hide- è offline   Rispondi citando il messaggio o parte di esso
Old 12-01-2009, 23:54   #6
variabilepippo
Senior Member
 
L'Avatar di variabilepippo
 
Iscritto dal: Mar 2007
Messaggi: 1792
Quote:
Se usa fflush su stdin allo siamo freschi
Quello è il minimo...

Questo è l'Hello World proposto in quella "guida", non propriamente conforme allo standard ANSI C:

Codice:
#include <stdio.h>

main ()
{
  printf("Hello World!");
}
variabilepippo è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 09:22   #7
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da -hide- Guarda i messaggi
Non credo cambi molto, perché già una cosa simile l'avevo fatta.
Mi spiego meglio. Quando avvio il programma dal mac la prima istruzione di ogni case, cioè il printf "nome" viene saltata e compare una cosa del genere a schermo

nome: cognome:


da qui in poi funziona regolarmente, ma ormai è andato via una cosa importante del programma.
Dove fflush effettivamente serviva non ce l'ha messo Rimane un invio nello standard input. L'invio non viene prelevato dalla scanf che legge la scelta.
Inserisci sotto alla scanf e al posto di ogni fflush(stdin):

while(getchar() != '\n');

Mi dai il link a questa guida ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 10:34   #8
Aut0maN
Senior Member
 
L'Avatar di Aut0maN
 
Iscritto dal: Jul 2004
Città: Vicenza
Messaggi: 3832
Quote:
Originariamente inviato da cionci Guarda i messaggi
Dove fflush effettivamente serviva non ce l'ha messo Rimane un invio nello standard input. L'invio non viene prelevato dalla scanf che legge la scelta.
Inserisci sotto alla scanf e al posto di ogni fflush(stdin):

while(getchar() != '\n');

Mi dai il link a questa guida ?
Te lo passo io:

http://programmazione.html.it/guide/leggi/32/guida-c/

piuttosto se ne conosci una realizzata meglio me la suggeriresti?
(preferirei materiale free)
__________________
PSN: raiden_it || Steam: id ||
Aut0maN è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 10:59   #9
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da Aut0maN Guarda i messaggi
piuttosto se ne conosci una realizzata meglio me la suggeriresti?
(preferirei materiale free)
Purtroppo non ne conosco

Ci sono alcune cose abbastanza inutili in quel codice:

// Popolo la variabile daInserire
printf (" NOME > ");
scanf ("%s", nome);
strcpy(daInserire.nome, nome);
printf (" COGNOME > ");
scanf ("%s", cognome);
strcpy(daInserire.cognome, cognome);
printf (" TELEFONO > ");
scanf ("%s", telefono);
strcpy(daInserire.telefono, telefono);
printf (" EMAIL > ");
scanf ("%s", email);
strcpy(daInserire.email, email);
printf (" SITOWEB > ");
scanf ("%s", sitoweb);
strcpy(daInserire.sitoweb, sitoweb);

Che senso ha usare quelle variabili di appoggio ? Perché non leggere direttamente i membri della struttura ? Anzi, perché non scrivere direttamente le informazioni nel nodo allocato dinamicamente ?

Ultima modifica di cionci : 13-01-2009 alle 11:02.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 11:04   #10
-hide-
Senior Member
 
L'Avatar di -hide-
 
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
Quote:
Dove fflush effettivamente serviva non ce l'ha messo Rimane un invio nello standard input. L'invio non viene prelevato dalla scanf che legge la scelta.
Inserisci sotto alla scanf e al posto di ogni fflush(stdin):

while(getchar() != '\n');
Allora ho fatto una prova.
L'istruzione scritta dopo la scanf risolve il problema del salto del printf "nome".
Inserendo la stessa funzione prima di tutti i gets si attende un invio per far partire l'istruzione e questo rende il programma un pò troppo lento. Quindi l'ho levato e funziona comunque correttamente.

Mi ero dimenticato una cosa invece. Su mac non mi fa dichiarare scelta come short int. Al momento del lancio del programma da terminale il programma parte già concluso.
__________________

PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote
Mobile: Samsung Galaxy Wonder i8150 cm9
LinkedIn
-hide- è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 11:11   #11
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Diciamo che quel ciclo fa la stessa funzione di fflush(stdin).
Comunque è strano, gets non dovrebbe prelevare lo '\n' dallo stdin...l'unica funzione di input che preleva lo '\n' è fgets.
Edit: aspetta, lo devi inserire dopo gets, non prima

Sostituisci SEMPRE gets e scanf("%s", xxx) con fgets. gets non permette di controllare che il numero di caratteri inseriti sia minore della dimensione dei buffer di lettura usati.
http://www.cplusplus.com/reference/c...dio/fgets.html

Ad esempio:

char nome[50];
fgets(nome, 50, stdin);
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 11:17   #12
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Assurdo

Codice:
int scelta; /* per inserire la scelta del menu' */
[cut]
for (;scelta!= 0;)
Parte dal presupposto che scelta sia già diverso da zero. In molti compilatori le variabili automatiche vengono inzializzate nello stack proprio con il valore zero. Uno dei pochi che non lo fa è il compilatore Microsoft
E' questo il motivo per cui ti esce, mah

Inizializza scelta a 1:

int scelta = 1;

Per lo short, utilizza solo short:

short scelta = 1;

Ultima modifica di cionci : 13-01-2009 alle 11:20.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 11:27   #13
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Cercavo il modo di contattare quelli di html.it per dirgli che la guida era inadeguata, ma non sono riuscito a sapere da dove sia possibile farlo
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 11:41   #14
-hide-
Senior Member
 
L'Avatar di -hide-
 
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
il while dopo fgets non cambia la cosa di prima. Sempre attende l'invio. E cmq così sembra funzionare correttamente l'inserimento da input.
Lo short pure risolto ^^
Ora però quando faccio visualizza non formatta più il testo come l'ho deciso io. Va a capo per la mia istruzione e poi di nuovo a capo.
fgets magari non è compatibile con printf?!


Per HTML.it prova a contattare l'amministratore del forum.
__________________

PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote
Mobile: Samsung Galaxy Wonder i8150 cm9
LinkedIn
-hide- è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 11:55   #15
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Il while lo devi usare con gets, ma non con fgets
fgets ripulisce già lo stdin (legge fino a '\n' compreso).

fgets include lo \n all'interno della stringa. E' per quello che ti stampa strano.

Scrivi una funzione:
Codice:
int readString(char *buffer, int size)
{
   fgets(buffer, size, stdin);
   if(buffer[strlen(buffer)] - 1] == '\n')
   {
       //ho '\n' in fondo alla stringa, allora lo devo rimuovere
       buffer[strlen(buffer)] - 1] = '\0';
       return 0;
   }
   //ci sono ancora caratteri in stdin
   return 1;
}
Questa funzione sopra può essere generica e permette di far gestire al chiamante il caso in cui ci siano ancora caratteri sullo stdin.
In questo programma, invece, se ci sono altri caratteri su stdin potresti tranquillamente svuotarlo:
Codice:
void readString(char *buffer, int size)
{
   fgets(buffer, size, stdin);
   if(buffer[strlen(buffer)] - 1] == '\n')
   {
       //ho '\n' in fondo alla stringa, allora lo devo rimuovere
       buffer[strlen(buffer)] - 1] = '\0';
   }
   else
   {
       while(getchar() != '\n');   
   }
}
Ovviamente restano caratteri nello stdin nel caso in cui venga inserita una stringa più grande della dimensione massima che il vettore di char può contenere.

Ultima modifica di cionci : 13-01-2009 alle 11:59.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 12:55   #16
-hide-
Senior Member
 
L'Avatar di -hide-
 
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
Quote:
fgets include lo \n all'interno della stringa. E' per quello che ti stampa strano.
Immaginavo. Comunque questa cosa ora vedo di risolverla con gli esempi che mi hai fatto.
Invece visto che ci siamo ne chiedo un'altra. Per pulire lo schermo si usa

system ("clear"); // per unix
system ("cls"); // per windows

Ma dove le vado a mettere nel programma per farmi visualizzare sempre il meno all'uscita dal break. Mi conviene fare un ciclo in cui schiacciando un tasto si pulisce?
__________________

PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote
Mobile: Samsung Galaxy Wonder i8150 cm9
LinkedIn
-hide- è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 16:11   #17
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da -hide- Guarda i messaggi
Immaginavo. Comunque questa cosa ora vedo di risolverla con gli esempi che mi hai fatto.
Non è un esempio, è proprio la funzione che devi inserire nel codice.
Inserisci

readString(nome, NCHAR);

dove nel codice iniziale c'è gets
Quote:
Originariamente inviato da -hide- Guarda i messaggi
Invece visto che ci siamo ne chiedo un'altra. Per pulire lo schermo si usa

system ("clear"); // per unix
system ("cls"); // per windows

Ma dove le vado a mettere nel programma per farmi visualizzare sempre il meno all'uscita dal break. Mi conviene fare un ciclo in cui schiacciando un tasto si pulisce?
Spiegati meglio...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 16:15   #18
-hide-
Senior Member
 
L'Avatar di -hide-
 
Iscritto dal: Sep 2008
Città: Messina
Messaggi: 991
Ho semplicemente sbagliato a scrivere.
Vorrei visualizzare sempre solo il menù all'uscita dei vari case, quindi dopo il break intendendoci. Cioè si dovrebbe pulire lo schermo e rimanere sempre come prima cosa il menù. Le istruzioni per pulire lo schermo che ho trovato sono quelle, ma non riesco a cogliere la giusta posizione per ottenere ciò che io desidero.

Per le funzioni al più presto faccio
__________________

PC/HTPC: Mac Mini 3,1 late 2009 | My Book Studio 2TB | LG M237WD monitor/tv | Logitech Z4 | Apple Magic Mouse | Apple Wireless Keyboard | Apple Remote
Mobile: Samsung Galaxy Wonder i8150 cm9
LinkedIn
-hide- è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 16:19   #19
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Alla fine dello switch, prima della parentesi chiusa del for
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 13-01-2009, 19:14   #20
DanieleC88
Senior Member
 
L'Avatar di DanieleC88
 
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
O all'inizio, appena prima di stampare il menù.
__________________

C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai!
DanieleC88 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequenze al top per il gaming AMD Ryzen 7 9850X3D: Zen 5, 3D V-Cache e frequen...
Le soluzioni FSP per il 2026: potenza e IA al centro Le soluzioni FSP per il 2026: potenza e IA al ce...
AWS annuncia European Sovereign Cloud, il cloud sovrano per convincere l'Europa AWS annuncia European Sovereign Cloud, il cloud ...
Redmi Note 15 Pro+ 5G: autonomia monstre e display luminoso, ma il prezzo è alto Redmi Note 15 Pro+ 5G: autonomia monstre e displ...
OPPO Reno15 in viaggio con Gaia Gozzi: i...
Elon Musk valuta il gioco delle tre cart...
Nuove revisioni per Abarth 600e: arrivan...
Intelligenza artificiale, re-training e ...
LG presenta a ISE 2026 la nuova serie di...
Alienware: disponibile in Italia il nuov...
Arrivano le bodycam sui treni di Ferrovi...
Nike taglia 775 posti negli USA: l'autom...
Crimson Desert si mostra in un nuovo gam...
Addio transistor? Questo dispositivo usa...
Jensen Huang: le fabbriche negli Stati U...
Sam Altman ammette l'errore: GPT-5.2 &eg...
Super test al gelo della Norvegia: quant...
Google Pixel 10 e 10 Pro in offerta su A...
Apple Watch ai minimi storici su Amazon:...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 17:17.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v