Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione
HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione
Abbiamo provato per diverse settimane il nuovo Magic V5 di HONOR, uno smartphone pieghevole che ci ha davvero stupito. Il device è il più sottile (solo 4.1mm) ma non gli manca praticamente nulla. Potenza garantita dallo Snapdragon 8 Elite, fotocamere di ottima qualità e batteria in silicio-carbonio che garantisce un'ottima autonomia. E il Prezzo? Vi diciamo tutto nella nostra recensione completa.
Recensione Google Pixel 10 Pro XL: uno zoom 100x assurdo sempre in tasca (e molto altro)
Recensione Google Pixel 10 Pro XL: uno zoom 100x assurdo sempre in tasca (e molto altro)
Google Pixel 10 Pro XL è il top di gamma della serie Pixel, presentando un ampio display Super Actua da 6.8 pollici insieme alle novità della serie, fra cui la ricarica wireless magnetica Pixelsnap e le nuove funzionalità AI avanzate. Il comparto fotografico include un sistema a tripla fotocamera con zoom Pro Res fino a 100x, mentre il processore Tensor G5 con 16GB di RAM garantisce prestazioni percepite molto elevate su Android.
Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico
Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico
Forte della piattaforma Qualcomm Snapdragon X, il notebook Lenovo IdeaPad Slim 3 riesce a coniugare caratteristiche tecniche interessanti ad uno chassis robusto, con autonomia di funzionamento a batteria che va ben oltre la tipica giornata di lavoro. Un notebook dal costo accessibile pensato per l'utilizzo domestico o in ufficio, soprattutto con applicazioni native per architettura ARM
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 05-02-2009, 11:01   #1
silverfox5010
Junior Member
 
Iscritto dal: Dec 2006
Messaggi: 6
[C]Problema con array di puntatori a struct

Salve !
Ho problema a risolvere il seguente esercizio per quanto riguarda l' array di puntatori a struttura. Ho una struttura di tipo lago e un puntatore a lago next. Nel main viene passato il puntatore a lago head alla funzione crea_lista() che prende in input un file e un array di puntatori a lago. Come utilizzo il puntatore ad array per creare la lista ?
Grazie anticipatamente !

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



typedef struct lago *next;
typedef struct lago
{
  
char nome[15];
  
int profond;
  
next succ;
}
lago;


/*Prototipi di funzione*/
void crea_lista(FILE*, lago**);
void calcolo_max_prof(lago*, int**);
void scrivi_file(FILE*, lago*, int*);


int main(int argcchar *argv[])
{
  
lago *head;
  
FILE *input, *output;
  
int *max_profond;
  
input=fopen(argv[1],"r");
  
output=fopen(argv[2], "w");
  
crea_lista(input, &head);
  
calcolo_max_prof(head,&max_profond);
  
scrivi_file(output,head,max_profond);
  return 
0;
}


/*Crea una lista di record di tipo lago a partire da un file input
* (il cui nome viene passato sulla linea di comando con l'eseguibile)
* in cui sono contenuti dati del tipo (nome lago, profondita'),etc
* (Es. Bracciano 160 Garda 346 Trasimeno 6 Como 410 Maggiore 372).
* Ogni recordo creato dalla funzione conterra' nel campo nome il nome
* del lago, nel campo profond la profondita' e nel campo succ un puntatore
* al prossimo record(eventualmente NULL).La funzione NON restituisce il
* puntatore alla testa della lista che invece e' memorizzata nella variabile
* head passata per riferimento.*/
void crea_lista(FILEinputlago** first)
{

}


/*Determina la profondita' massima dei laghi presenti nella lista. La funzione
  * NON restituisce il puntatore alla testa della lista che invece e' memorizzato
  * nella variabile head passata per riferimento.*/
void calcolo_max_prof(lagofirstint** max)
{

}


/*Stampa nel file output (il cui nome viene passato sulla linea di comando con
  * l' eseguibile e il file input) il record (nome lago + profondita') relativo
  * al lago di profondita' massima.*/
void scrivi_file(FILEoutputlagofirstintmax)
{


Io gestirei un array di puntatori nel seguente modo. Ma non sono sicuro se vada bene per l' esercizio sopra.


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

typedef struct data
{
  
int value;
  
struct data *next;
}
data;


int main()
{
  
int i;
  
data **calloc(3sizeof(data));

  for(
03i++)
  {
    
d[i] = calloc(1sizeof(data));
    
scanf("%d", &d[i]->value);
    
printf("d[%d]= %d\n"id[i]->value);
  }

  for(
03i++)
  {
    if(
i<3)
       
d[i]->next d[i+1];
  }

  for(
03i++)
  {
    if(
d[i]->next != NULL)
       
printf("Successivo di d[%d]: %d\n"id[i]->next->value);
  }

  return 
0;


Ultima modifica di silverfox5010 : 11-02-2009 alle 10:03.
silverfox5010 è offline   Rispondi citando il messaggio o parte di esso
Old 05-02-2009, 18:39   #2
silverfox5010
Junior Member
 
Iscritto dal: Dec 2006
Messaggi: 6
Qualcuno può aiutarmi gentilmente ?
silverfox5010 è offline   Rispondi citando il messaggio o parte di esso
Old 05-02-2009, 19:49   #3
Kenger
Member
 
Iscritto dal: Aug 2005
Messaggi: 168
Temo tu abbia fatto un po di confusione. "lago** first" non è un array di puntatori ma un puntatore passato per riferimento, in modo che le modifiche fatte alla variabile continuino ad esistere fuori dalla funzione.
Kenger è offline   Rispondi citando il messaggio o parte di esso
Old 05-02-2009, 22:17   #4
silverfox5010
Junior Member
 
Iscritto dal: Dec 2006
Messaggi: 6
Il docento lo ha volutamento scritto in quel modo.. mmh non sò come fare.. e quello struct lago *next non riesco ad utilizzarlo
silverfox5010 è offline   Rispondi citando il messaggio o parte di esso
Old 06-02-2009, 14:18   #5
silverfox5010
Junior Member
 
Iscritto dal: Dec 2006
Messaggi: 6
Come si utilizza quella struttura lago *next ?
Intendo
Codice:
typedef struct lago *next;
Non riesco ad utilizzarla ><.
silverfox5010 è offline   Rispondi citando il messaggio o parte di esso
Old 11-02-2009, 10:02   #6
silverfox5010
Junior Member
 
Iscritto dal: Dec 2006
Messaggi: 6
Quote:
Originariamente inviato da Kenger Guarda i messaggi
Temo tu abbia fatto un po di confusione. "lago** first" non è un array di puntatori ma un puntatore passato per riferimento, in modo che le modifiche fatte alla variabile continuino ad esistere fuori dalla funzione.
Come devo fare quindi >< ?
silverfox5010 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR Magic V5: il pieghevole ultra sottile e completo! La recensione HONOR Magic V5: il pieghevole ultra sottile e co...
Recensione Google Pixel 10 Pro XL: uno zoom 100x assurdo sempre in tasca (e molto altro) Recensione Google Pixel 10 Pro XL: uno zoom 100x...
Lenovo IdeaPad Slim 3: un notebook Snapdragon X economico Lenovo IdeaPad Slim 3: un notebook Snapdragon X ...
Recensione OnePlus Watch 3 43mm: lo smartwatch che mancava per i polsi più piccoli Recensione OnePlus Watch 3 43mm: lo smartwatch c...
BOOX Note Air4 C è uno spettacolo: il tablet E Ink con Android per lettura e scrittura BOOX Note Air4 C è uno spettacolo: il tab...
Da 309€ a 549€, fino a 32GB di RAM: ecco...
Beats mai così convenienti: sconti fino ...
Da 27,78€ a 56,99€: 5 accessori indispen...
3 minuti: è il tempo per vedere l...
Gli Amazfit sono ora gli smartwatch più ...
Rowenta alza la posta: scopa elettrica s...
6 robot per le pulizie completi in offer...
Friggitrice ad aria Cecofry Full InoxBla...
iPhone 16 Pro Max a 10€ in più del minim...
Una chiavetta USB, ma SanDisk Ultra Slid...
La bolla dell'AI: perché l'econom...
Lo smartphone dovrebbe essere usato solo...
SpaceX: i video e le foto dello spettaco...
Anche a Pescara si passa ai fatti: e-bik...
La One UI 8 è pronta: Samsung con...
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: 18:25.


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