Torna indietro   Hardware Upgrade Forum > Software > Programmazione

HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix
Un proiettore economico, che fa della portabilità e immediatezza i suoi punti di forza. Adatto per una camera da letto o per la casa vacanze, è basato su sistema proprietario Linux ma offre piena compatibilità ufficiale a Netflix
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
ASUS ProArt GoPro Edition è il notebook compatto per chi crea
Un notebook sviluppato in collaborazione con GoPro ma che risponde al meglio alle necessità di tutti coloro che creano contenuti video: robustezza, design, potenza di calcolo e funzionalità si abbinano al meglio tra di loro, pur se a prezzo di un costo elevato per via della tanta memoria onboard
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090
Ho affidato ai due modelli lo stesso mestiere ma non lo stesso identico prompt: trasformare una storia illustrata in un video usando una RTX 3090 e modelli locali. Ne sono usciti due film, due applicazioni e due idee opposte di efficienza. Fucina, progettata con Fable 5, colpisce di più nei primi secondi. Storyboard Studio, costruito con ChatGPT/Codex, regge meglio sulla distanza e vince il confronto complessivo, ma di stretta misura
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 27-10-2006, 18:22   #1
Starise
Senior Member
 
L'Avatar di Starise
 
Iscritto dal: Oct 2000
Città: Napoli
Messaggi: 984
[C] Allocazione dinamica: Array di puntatori a strutture

Ciao a tutti!
Sono un po' confuso riguardo un paio di cosette e spero che possiate aiutarmi a chiarire le idee! Innanzitutto ho realizzato una struttura di questo tipo:
Codice:
typedef struct _Contatti
{
    unsigned int ID;
    char Nome[LSTRING];
    char Cognome[LSTRING]; 

    /* Altri dati */
    LISTA Telefono;
    LISTA Fax;
    LISTA Cellulare;
}CONTATTI;
Codice:
int main()
{
        /* Dichiaro un puntatore ad una locazione che può contenere 
            una struttura di tipo CONTATTI, giusto? */
	CONTATTI *Array = NULL;
	int contatti = 1;
	Alloca_Memoria( &Array, &contatti );
}
Adesso, la function Alloca_Memoria, deve la memoria, poco alla volta, a seconda di quanto si incrementa 'contatti', cominciando da uno!
Codice:
void Alloca_Memoria( CONTATTI *_Ptr, int *dim )
{
	_Ptr = ( CONTATTI * )realloc( _Ptr, (*dim) * sizeof( CONTATTI ) );
}
Cosi però non funziona, compila ma il programma si blocca!
Codice:
void Alloca_Memoria( CONTATTI **_Ptr, int *dim )
{
	*_Ptr = ( CONTATTI * )realloc( *_Ptr, (*dim) * sizeof( CONTATTI ) );
}
Cosi invece funziona, alloca la memoria, ma pare comunque non andar bene, perchè io alloco solo lo spazio x un elemento, però quando vado a scrivere dentro l'array, riesco a scrivere dei dati anche negli elementi successivi al primo! Poi non ho capito perchè in ingresso vuole un **_Ptr invece di un semplice *_Ptr

Scusate, magari sono cose stupide, però non riesco a uscirne
__________________
Workstation: CPU AMD Ryzen 5900X @ 4950 MHz | RAM Corsair DDR4 64GB @ 3.6GHz | MoBo Gigabyte B550 AORUS Pro V2 | NVMe 1TB ~ WD Black SN850 | Storage 20 TB ~ HGST 7200RPM | PSU Fractal Ion+ 2 860W | GPU Radeon RX 9070 XT + RTX 4070 Super | Mouse Logitech G Pro | Tastiera Logitech G915 TKL -- Audio/Video: AVR Denon X1300W 4K | Interfaccia audio Steinberg UR22 MKII | Casse 2x Klipsch RP-160M | Cuffie Sennheiser HD 650 | B&W Px7 S3 | Mic Oktava MK 012 Black | Display LG OLED 48" @ 2160p 120Hz

Ultima modifica di Starise : 27-10-2006 alle 18:25.
Starise è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2006, 18:28   #2
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
uno non passare la dimensione come puntatore che non è il massimo della logica .. ok tutto ma non è che se hai scoperto i puntatori devi usare tutte le variabili come puntatore

e poi quando passi Array non devi mettere il &

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2006, 18:54   #3
Starise
Senior Member
 
L'Avatar di Starise
 
Iscritto dal: Oct 2000
Città: Napoli
Messaggi: 984
Quote:
Originariamente inviato da Fenomeno85
e poi quando passi Array non devi mettere il &
Ma io mica l'ho dichiarato come array. L'ho dichiarato come puntatore.
__________________
Workstation: CPU AMD Ryzen 5900X @ 4950 MHz | RAM Corsair DDR4 64GB @ 3.6GHz | MoBo Gigabyte B550 AORUS Pro V2 | NVMe 1TB ~ WD Black SN850 | Storage 20 TB ~ HGST 7200RPM | PSU Fractal Ion+ 2 860W | GPU Radeon RX 9070 XT + RTX 4070 Super | Mouse Logitech G Pro | Tastiera Logitech G915 TKL -- Audio/Video: AVR Denon X1300W 4K | Interfaccia audio Steinberg UR22 MKII | Casse 2x Klipsch RP-160M | Cuffie Sennheiser HD 650 | B&W Px7 S3 | Mic Oktava MK 012 Black | Display LG OLED 48" @ 2160p 120Hz
Starise è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2006, 18:57   #4
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
Quote:
Originariamente inviato da Starise
Ma io mica l'ho dichiarato come array. L'ho dichiarato come puntatore.
Array il nome della variabile non il tipo array

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 27-10-2006, 19:00   #5
Paco De Luciaaaaa
Senior Member
 
L'Avatar di Paco De Luciaaaaa
 
Iscritto dal: Mar 2005
Città: Torino... ma Abruzzo rulez!
Messaggi: 613
Ma scusa se alla chiamata passi il puntatore a un puntatore è ovvio che poi nella provedura devi accerderci con **_ptr.

Cmq trattandosi di un puntatore passalo senza l'operatore & nella chiamata e nella funzione lo richiami con *_ptr.


Mi sa che hai fatto un pò di confusione con i puntatori ripassali
__________________
Case AT big tower - Mobo XXX - amd 486DX2@66Mhz - 8 MB edo-ram - Trident SVGA 2MB - HDD 270MB Conner - CD-ROM Hitachi 4X
"Muletto": DFI Lanparty LT X38@X48 T2R - e8400@3870 1.2xV - 4GB black dragon @ 1147 - 2x320 Barracuda 0Raided - from 8800GT Club3d to 5850 Sapphire
Paco De Luciaaaaa è offline   Rispondi citando il messaggio o parte di esso
Old 28-10-2006, 17:26   #6
lovaz
Senior Member
 
L'Avatar di lovaz
 
Iscritto dal: Jul 2002
Messaggi: 4334
Quote:
Originariamente inviato da Starise
Ma io mica l'ho dichiarato come array. L'ho dichiarato come puntatore.
(nomi di) array e puntatori sono praticamente la stessa cosa in C

Aspetto smentite...
lovaz è offline   Rispondi citando il messaggio o parte di esso
Old 28-10-2006, 17:29   #7
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
Quote:
Originariamente inviato da lovaz
(nomi di) array e puntatori sono praticamente la stessa cosa in C

Aspetto smentite...
nessuna smentita è corretto ciò che dici

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
Old 28-10-2006, 18:43   #8
zakmckraken
Member
 
Iscritto dal: Apr 2004
Messaggi: 56
Ciao a tutti maaa... riguardo al fatto di scrivere in aree di memoria non inizializzate che io sappia in C/C++ puoi scrivere ovunque tu voglia, sta al programmatore stare attento e limitarsi :P

Zak (& mostly the Alien Mindbender)
zakmckraken è offline   Rispondi citando il messaggio o parte di esso
Old 28-10-2006, 19:04   #9
Fenomeno85
Senior Member
 
L'Avatar di Fenomeno85
 
Iscritto dal: Jun 2002
Città: Provincia De VaRéSe ~ § ~ Lat.: 45° 51' 7" N Long.: 8° 50' 21" E ~§~ Magica Inter ~ § ~ Detto: A Chi Più Amiamo Meno Dire Sappiamo ~ § ~ ~ § ~ Hobby: Divertimento allo Stato Puro ~ § ~ ~ § ~ You Must Go Out ~ § ~
Messaggi: 8897
Quote:
Originariamente inviato da zakmckraken
Ciao a tutti maaa... riguardo al fatto di scrivere in aree di memoria non inizializzate che io sappia in C/C++ puoi scrivere ovunque tu voglia, sta al programmatore stare attento e limitarsi :P

Zak (& mostly the Alien Mindbender)
si un paio di zebedei

una cosa è scrivere così tanto per fare cacchiate ... altre è programmare

~§~ Sempre E Solo Lei ~§~
__________________
Meglio essere protagonisti della propria tragedia che spettatori della propria vita
Si dovrebbe pensare più a far bene che a stare bene: e così si finirebbe anche a star meglio.
Non preoccuparti solo di essere migliore dei tuoi contemporanei o dei tuoi predecessori.Cerca solo di essere migliore di te stesso
Fenomeno85 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


HONOR CHOICE Projector Air Pro: piccolo, portatile e con Netflix HONOR CHOICE Projector Air Pro: piccolo, portati...
ASUS ProArt GoPro Edition è il notebook compatto per chi crea ASUS ProArt GoPro Edition è il notebook c...
Fable e Sol a confronto: due cartoni animati creati su un PC con RTX 3090 Fable e Sol a confronto: due cartoni animati cre...
Il tablet rugged leggero e sottile: Lenovo ThinkTab X11 offre resistenza, doppia USB-C e batteria rimovibile Il tablet rugged leggero e sottile: Lenovo Think...
AMD Advancing AI 2026: l'hardware AMD per le elaborazioni IA del futuro, tra GPU, CPU e robot AMD Advancing AI 2026: l'hardware AMD per le ela...
RTX Spark pronto a dominare anche i tabl...
Il primo telefono davvero senza bordi no...
DeepSeek V4-Flash, API in beta pubblica:...
La crisi delle memorie continuerà: ecco ...
Dati su disfunzione erettile e perdita d...
Arriva e-invoice, il servizio di fiskaly...
Champions League, F1 e MotoGP: ecco la p...
Amazon alza a 220 miliardi le stime sugl...
World of Warcraft e Dungeons & Drago...
AXOL Server ridisegna l'infrastruttura d...
MSI ha ucciso AMD EXPO ULL? High-Efficie...
Falso Portale dell'Automobilista ruba pa...
Apple chiude il miglior trimestre di giu...
Sony tira dritto sull'addio ai dischi Pl...
I robot di Google adesso lavorano in squ...
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: 16:09.


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