Torna indietro   Hardware Upgrade Forum > Software > Programmazione

TCL 65C8L, la recensione del SQD-Mini LED da 4400 nit misurati
TCL 65C8L, la recensione del SQD-Mini LED da 4400 nit misurati
La tecnologia SQD-Mini LED di TCL arriva sul taglio da 65 pollici con la serie C8L: 2040 zone, pannello WHVA 2.0 e un picco che alle rilevazioni delle sonde tocca i 4400 nit nel profilo Filmmaker e un HDR quasi perfetto
MSI Maestro 500 Wireless: ANC e 90 ore di autonomia a 70 euro
MSI Maestro 500 Wireless: ANC e 90 ore di autonomia a 70 euro
Wireless 2.4 GHz, Bluetooth 5.4, cancellazione attiva del rumore, design pieghevole e un'autonomia che mette in imbarazzo prodotti che costano il doppio. Le Maestro 500 non eccellono in nulla, ma offrono tutto. E a questo prezzo è difficile chiedere di più
NL-LC1 è il primo dissipatore a liquido AIO di Noctua: silenzio è la parola d'ordine
NL-LC1 è il primo dissipatore a liquido AIO di Noctua: silenzio è la parola d'ordine
Dopo anni di attesa e una lunga fase di sviluppo, Noctua entra nel mercato dei dissipatori a liquido AIO con la nuova serie NL-LC1. Forte dell'esperienza maturata nel raffreddamento ad aria, l'azienda austriaca promette di portare la propria filosofia fatta di qualità costruttiva, attenzione ai dettagli e silenziosità anche in questo segmento. Abbiamo provato il nuovo sistema per scoprire se riesce a distinguersi in un mercato ormai molto competitivo.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 03-06-2011, 18:16   #1
mame83
Member
 
Iscritto dal: Nov 2010
Messaggi: 71
[C]utilizzo realloc

ciao a tutti ho un po di difficolta con la funzione realloc e vorrei iniziare da un caso base.
Dato un vettore creato in maniera dinamica in una funzione voglio reallocarlo da n*n elementi a
n+1*n+1 elementi e azzerarlo tutto.
Codice:
void RIEMPI(int n,int **vt)
{
  int i;
  *vt=(int*)malloc(sizeof(int)*n*n);
  for (i=0; i<n*n; i++)
    {
     printf("dammi l elemento %d : ",i);
     scanf("%d",&((*vt)[i]));
    }
}  
void INSERISCI_NODO(int n, int **vt)/*inseriamo un nodo isolato al grafo*/
{
 int i;
 
 *vt=(int*)realloc(*vt,(n+1*n+1));
 
 for (i=0; i<((n+1)*(n+1)); i++)
    (*vt)[i]=0; 
     
}
int main()
{
  int nodi,i;
  int *vet=NULL;
  printf("dammi il numero di nodi : \n");
  scanf("%d",&nodi);
  RIEMPI(nodi,&vet);
  INSERISCI_NODO(nodi,&vet);
  printf("valore del vettore e' : \n");
  for (i=0; i<(nodi+1)*(nodi+1); i++)
     printf("%d  valore %d \n",i,vet[i]);
  printf("\n");
  system("PAUSE");
}
se ad esempio n =2 in output mi azzera fino al elemento 8 ((n+1)*(n+1)-1)dopo va in loop. spero mi aiutate grazie in anticipo .
mame83 è offline   Rispondi citando il messaggio o parte di esso
Old 03-06-2011, 19:05   #2
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2790
Codice:
*vt=(int*)realloc(*vt,(n+1*n+1));
n+1*n+1 è uguale a n+n+1, devi mettere delle parentesi. Inoltre devi anche moltiplicare per sizeof(int), come hai fatto per la malloc.
E per azzerare più efficientemente la memoria puoi usare memset: LINK
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2011, 10:27   #3
mame83
Member
 
Iscritto dal: Nov 2010
Messaggi: 71
Quote:
Originariamente inviato da wingman87 Guarda i messaggi
Codice:
*vt=(int*)realloc(*vt,(n+1*n+1));
n+1*n+1 è uguale a n+n+1, devi mettere delle parentesi. Inoltre devi anche moltiplicare per sizeof(int), come hai fatto per la malloc.
E per azzerare più efficientemente la memoria puoi usare memset: LINK
allora ho provato a mettere una variabile NUOVO=n+1*n+1 che mi restituisce 9 risultato esatto. funziona solo che non capisco perche bisogna moltiplicarlo per sizeof int
Codice:
void INSERISCI_NODO(int n, int **vt)/*inseriamo un nodo isolato al grafo*/
{
 int i;
 int nuovi=(n+1)*(n+1);
 printf("valore nuovi %d \n",nuovi);
 *vt=(int*)realloc(*vt,nuovi*sizeof(int));
 
 for (i=0; i<((n+1)*(n+1)); i++)
    (*vt)[i]=0; 
     
}
mame83 è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2011, 11:21   #4
Kenger
Member
 
Iscritto dal: Aug 2005
Messaggi: 168
Perchè a te serve un'area di memoria in grado di contenere 9 elementi di tipo int, quindi 9 moltiplicato per la grandezza di un intero.
Kenger è offline   Rispondi citando il messaggio o parte di esso
Old 04-06-2011, 11:40   #5
mame83
Member
 
Iscritto dal: Nov 2010
Messaggi: 71
ok grazie ancora per la soluzione
mame83 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


TCL 65C8L, la recensione del SQD-Mini LED da 4400 nit misurati TCL 65C8L, la recensione del SQD-Mini LED da 440...
MSI Maestro 500 Wireless: ANC e 90 ore di autonomia a 70 euro MSI Maestro 500 Wireless: ANC e 90 ore di autono...
NL-LC1 è il primo dissipatore a liquido AIO di Noctua: silenzio è la parola d'ordine NL-LC1 è il primo dissipatore a liquido A...
Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con Android 15 e penna, dal prezzo super Boox Go 10.3 (Gen II) Lumi: il tablet e-ink con ...
Gigabyte MO32U24 OLED: il 4K a 240Hz su un pannello OLED ideale per il gaming Gigabyte MO32U24 OLED: il 4K a 240Hz su un panne...
Apple Watch SE 3 GPS scende a soli 199€,...
Intel rafforza la divisione Foundry: l'e...
Smart TV LG OLED evo AI C5 4K da 55 poll...
I lander lunari della missione Artemis I...
SteamOS 3.8 esce dalla beta: supporto pr...
HDMI 2.2 si avvicina: i primi dispositiv...
GTA 6 è sempre più vicino:...
Prima mossa climatica di Anthropic: entr...
Ho scritto un programma da zero con Kimi...
Thermal Grizzly DeltaMate CPU Block: un ...
Il supercomputer più potente al m...
VSCO lancia Studio Pro su iOS: batch edi...
GPT-NL, il modello linguistico olandese ...
Apple Watch SE 3 crolla a 199€: il prezz...
'Non c'è spazio per console econo...
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: 07:06.


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